Đây là ảnh chụp màn hình của một số văn bản được nhập trong trình soạn thảo văn bản:
Đây là cùng một văn bản ở kích thước lớn hơn.
Lưu ý cách hiển thị răng cưa trên các chữ cái với các nét chéo nổi bật như x
và z
. Vấn đề này là một lý do chính tại sao các phông chữ raster đã mất đi sự phổ biến đối với các định dạng có thể mở rộng được của Cameron như TrueType.
Nhưng có lẽ đây không phải là vấn đề cố hữu với phông chữ raster, chỉ với cách thức chia tỷ lệ của chúng thường được thực hiện. Đây là một kết xuất thay thế bằng cách sử dụng phép nội suy song tuyến đơn giản kết hợp với ngưỡng .
Điều này mượt mà hơn, nhưng không lý tưởng. Các nét chéo vẫn còn gập ghềnh, và các chữ cái cong c
và o
vẫn là đa giác. Điều này đặc biệt đáng chú ý ở kích thước lớn.
Vậy có cách nào tốt hơn không?
Nhiệm vụ
Viết chương trình có ba đối số dòng lệnh.
resize INPUT_FILE OUTPUT_FILE SCALE_FACTOR
Ở đâu
- INPUT_FILE là tên của tệp đầu vào, được giả sử là tệp hình ảnh chứa văn bản màu đen trên nền trắng. Bạn có thể sử dụng bất kỳ định dạng hình ảnh raster chính (PNG, BMP, v.v.) thuận tiện.
- OUTPUT_FILE là tên của tệp đầu ra. Nó có thể là một định dạng hình ảnh raster hoặc vector. Bạn có thể giới thiệu màu nếu bạn đang thực hiện một số kết xuất pixel phụ giống như ClearType.
- SCALE_FACTOR là một giá trị dấu phẩy động dương cho biết mức độ hình ảnh có thể được thay đổi kích thước. Cho một tệp đầu vào x × y px và hệ số tỷ lệ s , đầu ra sẽ có kích thước sx × sy px (làm tròn đến số nguyên).
Bạn có thể sử dụng thư viện xử lý ảnh nguồn mở thứ ba.
Ngoài mã của bạn, hãy bao gồm các đầu ra mẫu của chương trình của bạn ở các hệ số tỷ lệ 1.333, 1.5, 2, 3 và 4 bằng cách sử dụng hình ảnh đầu tiên của tôi làm đầu vào. Bạn cũng có thể thử nó với các phông chữ khác, bao gồm các phông chữ theo tỷ lệ.
Chấm điểm
Đây là một cuộc thi phổ biến. Các mục có số lượng upvote lớn nhất trừ đi downvotes chiến thắng. Trong trường hợp hòa chính xác, mục trước đó sẽ thắng.
Chỉnh sửa : Thời hạn gia hạn do thiếu mục. TBA.
Các cử tri được khuyến khích đánh giá chủ yếu dựa trên hình ảnh đầu ra trông tốt như thế nào và thứ hai là sự đơn giản / thanh lịch của thuật toán.
SCALE_FACTOR
Luôn luôn là > 1?