Nya.vn

Thư viện thiết kế bỏ túi

HuyKTS.com - Thư viện thiết kế bỏ túi

Thiết lập căn chỉnh đường viền trong FontLab 7 (Phần 5)

Chào các bạn! Tôi là HuyKTS, một người yêu thích công việc thiết kế.

Thiết kế Font chữ là một lĩnh vực khá hẹp, cần rất ít người làm, nhưng rất quan trọng trong xã hội. Vì tất cả các văn bản kỹ thuật số và in ấn đều phải sử dụng Font chữ để trình bày văn bản. Công việc thiết kế Font chữ khá thú vị, bạn có thể tự tạo ra một Font chữ kiểu theo ý thích.

Trong bài viết này, tôi tổng hợp những kiến thức cần thiết nhất để chúng ta có thể hiểu về Font chữ và bước đầu thực hiện thiết kế Font chữ, Việt hóa Font chữ.

Các bạn xem bài viết chỉ cần xem phần hình ảnh. Hình ảnh đã được sắp xếp và trình bày nội dung bài viết, dễ xem và dễ hiểu. Phần văn bản dùng để tối ưu hóa nội dung.

Vùng canh chỉnh trong TrueType

  • Hinting TrueType đóng vai trò thiết lập căn chỉnh đường viền cho Font chữ trueType trong FontLab 7.
  • Vùng canh chỉnh trong Hinting TrueType chính là khoảng Overhang. Giống như PostScript, TrueType cũng có hai loại vùng canh chỉnh là Top Zones và Bottom Zones. Khác với PostScript, TrueType thiết lập Zones thông qua bảng TrueType Hinting Zones.
  • Top Zones của Hinting TrueType được ký hiệu bằng một vùng được gạch chéo màu xanh lam với hai đường giới hạn. Đường cơ sở là vị trí gốc canh chỉnh, được hiển thị xanh lam đậm. Đường canh chỉnh là đường giới hạn chiều rộng vùng canh chỉnh, được hiển thị màu xanh lam nhạt hơn.
  • Các đường Top Zones và Bottom Zones của Hinting TrueType nên trùng với các đường Zones được khai báo trong bảng Font Info đầy đủ để Hinting TrueType hoạt động giống với Hinting PostScript.
  • Có 4 khoảng Zones chính thường được dùng trong hầu hết các Font chữ in phổ biến (không phải là loại mô phỏng kiểu chữ viết tay): khoảng Caps, khoảng Xhgt, khoảng Base và khoảng Dsc.
    • Khoảng Caps là khoảng Top Zones nằm trên đường Caps Height, dùng để canh chỉnh các điểm nằm phía trên đường Caps Height.
    • Khoảng Xhgt là khoảng Top Zones nằm trên đường X-Height, dùng để canh chỉnh các điểm nằm phía trên đường X-Height.
    • Khoảng Base là khoảng Bottom Zones nằm trên đường Baseline, dùng để canh chỉnh các điểm nằm phía dưới đường Baseline.
    • Khoảng Dsc là khoảng Bottom Zones nằm trên đường Descender, dùng để canh chỉnh các điểm nằm phía dưới đường Descender.

Thiết lập Zones cho TrueType trong FontLab 7

  • Mở bảng TrueType Hinting Zones bằng cách: Trên thang trạng thái của công cụ Hinting TrueType => Chọn TTH Zones => Mở bảng TrueType Hinting Zones.
  1. Tạo thêm Top Zones hoặc Bottom Zones tương ứng.
  2. Xóa bỏ Top Zones hoặc Bottom Zones đang chọn.
  3. Bảng liệt kê các khoảng Top Zones của Hinting TrueType có trong Font chữ hiện hành.
  4. Bảng liệt kê các khoảng Bottom Zones của Hinting TrueType có trong Font chữ hiện hành.
  5. Bảng chỉ định canh chỉnh tăng hay canh chỉnh giảm giá trị khoảng Xhgt trên từng kích thước PPM cụ thể.
  6. Tên đường Zones. Có bốn đường Zones đặc biệt, được đặt tên mặc định là Caps, Xhgt, Base, Dsc.
  7. Khoảng cách từ đường cơ sở của khoảng Zones đến gốc tọa độ. Tính theo giá trị tọa độ trục Y.
  8. Độ rộng khoảng Zones. Khoảng Top Zones mang giá trị dương, khoảng Bottom Zones mang giá trị âm.
  9. Coppy Zones và Paste Zones: Dùng để sao chép Zones từ dự án này để gán vào dự án thiết kế Font chữ khác.
  10. FontLab 7 tự động tạo các khoảng Zones phù hợp với Font chữ đang thiết kế. Thông thường thì các khoảng Caps, Xhgt, Base và Dsc sẽ mặc định được tạo.
  11. Nhập các khoảng Zones được khai báo từ bảng Font Info đầy đủ vào bảng TrueType Hinting Zones.

Hint canh chỉnh điểm vào lưới Raster trong FontLab 7

Cách tạo Hint canh chỉnh điểm vào lưới:

  • Hint canh chỉnh điểm vào lưới Raster là loại Hintting TrueType đơn giản nhất. Hint này dùng để canh chỉnh một điểm vào lưới Raster. Điểm được canh chỉnh sẽ bắt điểm vào một vị trí trên lưới Raster theo cách thức được chỉ định.
  • Hint canh chỉnh điểm vào lưới Raster được chia thành hai loại là Hint canh chỉnh điểm theo hướng đứng và Hint canh chỉnh điểm theo hướng ngang.
  • Tạo Hint canh chỉnh điểm theo hướng đứng bằng cách: Trong bảng TrueType Hinting => Tắt Y và bật X => Chọn công cụ Align => L-Click vào điểm cần canh chỉnh theo hướng đứng.
  • Tạo Hint canh chỉnh điểm theo hướng ngang bằng cách: Trong bảng TrueType Hinting => Bật Y và tắt X => Chọn công cụ Align => L-Click vào điểm cần canh chỉnh theo hướng ngang.

Cách thiết lập cách thức Hint canh chỉnh điểm vào lưới:

  • Trong bảng mã code sẽ trình bày Hint canh chỉnh điểm theo hướng đứng và Hint canh chỉnh điểm theo hướng ngang lần lượt là:
    [alignh] là tên của lệnh Hint canh chỉnh điểm theo hướng đứng.
    [alignv] là tên của lệnh Hint canh chỉnh điểm theo hướng ngang.
    [ah02] là tên của Hint, quy định [ah] là tên của Hint canh chỉnh đứng còn [02] là con số để phân biệt với tên các Hint khác.
    [av01] là tên của Hint, quy định [av] là tên của Hint canh chỉnh đứng còn [01] là con số để phân biệt với tên các Hint khác.
    [round] là cách thức canh chỉnh.
  • Thay đổi cách thức canh chỉnh cho Hint canh chỉnh điểm bằng cách: Trong bảng TrueType Hinting => Bật Y và bật X => Chọn công cụ Editor => L-Click vào biểu tượng neo bên cạnh điểm canh chỉnh => Hiện bảng Align To Grid => Chọn phương pháp canh chỉnh và quan sát sự thay đổi của hình ảnh Raster xem thử.
    (Phần ghi chú công cụ canh chỉnh trình bày trong hình trên)

Hint vùng canh chỉnh trong FontLab 7

  • Vùng canh chỉnh được xác định kích thước theo đơn vị UPM. Trong khi điểm lại được canh chỉnh dựa trên lưới Raster. Nên trong một số kích thước PPM có thể khiến cho việc canh chỉnh điểm không chính xác.
  • Vùng canh chỉnh trong TrueType có thể được gán tính năng Hint vùng canh chỉnh để hoạt động chính xác trên từng kích thước PPM khác nhau.
  • Trên mỗi vùng căn chỉnh TrueType, ở bên phải sẽ có ký hiệu hình thoi. Trong kích thước PPM hiện hành, có thể thay đổi vị trí vùng canh chỉnh để hoạt động chính xác theo kích thước PPM đó bằng cách: L-Click kéo ký hiệu hình thoi lên hoặc xuống và quan sát sự thay đổi của vùng làm việc, một đường rất mờ sẽ trượt theo hướng di chuyển chuột, kéo theo sự thay đổi của các Hint canh chỉnh đỉnh hoặc Hint canh chỉnh đáy.
  • Tính năng Hint vùng canh chỉnh hữu ích với trường hợp thêm một Glyph mới vào Font chữ đã tạo Hinting TrueType rồi. Glyph mới được tạo thường có chiều cao bị lệch với ký tự khác ở một số kích thước PPM. Hint vùng canh chỉnh sẽ giúp tinh chỉnh lại vùng canh chỉnh để Hinting hoạt động chính xác.

Hint canh chỉnh đỉnh – đáy trong FontLab 7

Cách tạo Hint canh chỉnh đỉnh và Hint canh chỉnh đáy:

  • Hint canh chỉnh đỉnhHint canh chỉnh đáy trong TrueType chỉ được tạo ra và hoạt động trong vùng canh chỉnh TrueType. Nếu cố gắng tạo Hint ở ngoài vùng canh chỉnh, nó sẽ trở thành Hint canh chỉnh điểm với lưới Raster.
  • Hint canh chỉnh đỉnh (AlignTop) được tạo ra bằng cách: Trong bảng TrueType Hinting => Bật Y và tắt X => Chọn công cụ Align => L-Click vào một điểm màu đỏ đậm ở trên cùng của đường viền ngoài (điểm này phải nằm trong khoảng Top Zones) => Điểm được gán Hint canh chỉnh đỉnh xuất kiện ký hiệu chữ Z.
  • Hint canh chỉnh đáy (AlignBottom) được tạo ra bằng cách: Trong bảng TrueType Hinting => Bật Y và tắt X => Chọn công cụ Align => L-Click vào một điểm màu đỏ đậm ở dưới cùng của đường viền ngoài (điểm này phải nằm trong vùng Bottom Zones) => Điểm được gán Hint canh chỉnh đỉnh xuất hiện ký hiệu chữ Z.

Cách hoạt động của Hint canh chỉnh đỉnh và Hint canh chỉnh đáy:

  • Có một chương trình diễn giải luôn thực hiện diễn giải một kết quả Raster hóa mới mỗi khi kích thước hiển thị PPM bị thay đổi.
  • Chương trình diễn giải luôn làm tròn chiều rộng các khoảng Zones của TrueType thành những giá trị số nguyên theo kích thước PPM hiện hành.
  • Khi chương trình diễn giải các Glyph để hiển thị lên khung hình, các điểm được gán Hint canh chỉnh đỉnh và Hint canh chỉnh đáy được chỉ định bắt điểm vào đường cơ sở của vùng canh chỉnh nếu khoảng cách giữa Hint đó đến đường cơ sở chia cho khoảng rộng vùng canh chỉnh không lớn hơn 16/17.
  • Thuật toán này khá khó hiểu. Nên chỉ cần quan sát sự thay đổi của hình Raster xem trước để biết sự tác động của Hint lên hình ảnh ký tự.

Giải thích bảng mã code Hint canh chỉnh đỉnh và Hint canh chỉnh đáy:

  • Trong bảng mã code sẽ trình bày Hint canh chỉnh đỉnh và Hint canh chỉnh đáy lần lượt là:
    [Alignt] là tên của lệnh Hint canh chỉnh đỉnh.
    [Alignb] là tên của lệnh Hint canh chỉnh đáy.
    [at01] là tên của Hint, quy định [at] là tên của Hint canh chỉnh đỉnh và [01] là con số để phân biệt với tên các Hint khác.
    [ab01] là tên của Hint, quy định [ab] là tên của Hint canh chỉnh đáy và [01] là con số để phân biệt với tên các Hint khác.
    [“T: 1447”] là tên của vùng canh chỉnh. Tên của vùng canh chỉnh đỉnh được khai báo trong cặp dấu ngoặc kép. Quy định [T:] là tên của vùng canh chỉnh đỉnh và [1447] là giá trị khoảng cách từ đường cơ sở của vùng canh chỉnh này đến gốc tọa độ. Ngoại trừ hai vùng canh chỉnh đỉnh đặc biệt được đặt tên mặc định là Caps và Xhgt.
    [“B: 0”] là tên của vùng canh chỉnh. Tên của vùng canh chỉnh đáy được khai báo trong cặp dấu ngoặc kép. Quy định [B:] là tên của vùng canh chỉnh đáy và [0] là giá trị khoảng cách từ đường cơ sở của vùng canh chỉnh này đến gốc tọa độ. Ngoại trừ hai vùng canh chỉnh đáy đặc biệt được đặt tên mặc định là Base và Dsc.

Chiều rộng thân tiêu chuẩn TrueType trong FontLab 7

Khái niệm chiều rộng thân tiêu chuẩn trong TrueType Hinting:

  • Chiều rộng thân tiêu chuẩn của TrueType có khái niệm tương tự như PostScript, nhưng sử dụng một bảng khai báo riêng cho TrueType.
  • Khi khai báo chỉ số Stems trong bảng Font Info đầy đủ, chỉ số này sẽ được sử dụng trực tiếp cho định dạng PostScript. Khi kích hoạt tính năng tự động tạo chiều rộng thân tiêu chuẩn bên TrueType, FontLab tự động sao chép các giá trị Stems từ bảng Font Info đầy đủ để áp dụng vào định dạng TrueType.

Cách khai báo chiều rộng thân tiêu chuẩn của TrueType Hinting:

  • Mở bảng khai báo chiều rộng thân tiêu chuẩn của TrueType bằng cách: Trên thanh trạng thái của công cụ TrueType Hinting => L-Click chọn TTH Stems => Bảng TrueType Hinting Stems xuất hiện.
  1. Hiển thị danh sách chiều rộng thân nét nằm ngang.
  2. Hiển thị danh sách chiều rộng thân nét thẳng đứng.
  3. Thêm chiều rộng thân nét nằm ngang mới.
  4. Thêm chiều rộng thân nét thẳng đứng mới.
  5. Xóa bỏ chiều rộng thân nét đang chọn trong danh sách.
  6. Cố gắng giữ độ tương phản giữa nét đứng và nét ngang trong quá trình Raster hóa.

Chức năng của chiều rộng thân tiêu chuẩn trong TrueType Hinting:

  • Tính năng giữ độ tương phản của nét đứng và nét ngang tức là giữ cho tỉ lệ chiều rộng giữa thân nét thẳng đứng và thân nét nằm ngang được giữ lại ở mức tương đối. Ngay cả khi hiển thị ở kích thước PPM thấp. Tính năng này hữu ích trong những Font chữ có nét ngang mỏng hơn so với nét đứng. Giúp thể hiện được đặc điểm hình dáng của Font chữ tốt hơn.

Cách chỉnh sửa chiều rộng thân tiêu chuẩn của TrueType Hinting:

  1. Thiết lập cho quá trình Raster hóa tương ứng với các kích thước PPM theo tỉ lệ tuyến tính.
  2. FontLab 7 tự động tạo danh sách Stems để tối ưu cho Font chữ.
  3. Name: Tên của chiều rộng thân nét. Thông thường tên được đặt tự động. Người thiết kế cũng có thể sửa tên nhưng nên đặt trong khoảng 6 – 8 ký tự.
  4. Giá trị chiều rộng thân nét chữ, tính theo đơn vị Font chữ.
  5. Các kích thước PPM cho phép điều chỉnh giá trị Pixel tương ứng trong quá trình Raster hóa.

Lưu ý khi thiết lập chiều rộng thân tiêu chuẩn TrueType Hinting:

  • Quá trình Raster hóa tương ứng với các kích thước PPM theo tỉ lệ tuyến tính. Nghĩa là để chúng hoạt động tự nhiên theo thuật toán mặc định. Giá trị độ dày nét tăng tỉ lệ thuận theo kích thước hiển thị PPM. Không có tác động chỉnh sửa để tối ưu tỉ lệ nét.
  • Các kích thước PPM cho phép điều chỉnh giá trị Pixel tương ứng. Có thể hiểu theo ví dụ sau: Có một chiều rộng thân nét được đặt tên là Y:1, chiều rộng thân là 50 đơn vị Font chữ, nếu nó được hiển thị ở khoảng rộng từ 0 – 30 Pixel thì nó được phép điều chỉnh nhảy 1 – 2 Pixel để giữ cho độ tương phản giữa nét ngang và nét đứng tối ưu. FontLab cho phép điều chỉnh nhảy 1 đến 6 Pixel, điều chỉnh lớn hơn 6 Pixel là không cần thiết.
  • Việc can thiệp vào quá trình Raster hóa để điều chỉnh chiều rộng nét là cần thiết vì hai lý do: Với các Font chữ có độ dày nét đứng và nét ngang bằng nhau (ví dụ: Courier, Arial) thì việc điều chỉnh độ dày nét chữ hiển thị sẽ kiểm soát cho nét đứng và nét ngang gần bằng nhau, không làm biến dạng chữ quá nhiều khi hiển thị. Giữ cho tỉ lệ độ dày của nét thẳng đứng và nét nằm ngang không thay đổi. Nếu nét đứng điều chỉnh tăng Pixel thì nét nằm ngang cũng sẽ điều chỉnh tăng Pixel. Điều này quan trọng với các Font chữ có nét ngang mỏng hơn nét đứng và Font chữ đậm được hiển thị ở kích thước PPM thấp.

Cách mở các tùy chọn thêm cho TrueType Hinting:

  • Các tùy chọn thêm dùng để tinh chỉnh hoạt động của các công cụ Hinting TrueType.
  • Mở bảng tùy chọn thêm bằng cách: Trên thanh trạng thái của công cụ TrueType Hinting => L-Click vào Other TTH Settings => Mở bảng TrueType Hinting Settings.

Mức độ làm tròn vào khoảng Stem gần nhất.

  • Bản vẽ thiết kế thể hiện chiều rộng thân nét thực tế theo đơn vị Font chữ. Quá trình Hinting sẽ phân loại các thân nét chữ thực tế và làm tròn vào các Stem trong danh sách. Bằng cách xác định chiều rộng thân nét gần với Stem nào thì làm tròn vào Stem đó. Quá trình Raster hóa thành điểm ảnh sẽ nhận diện chiều rộng thân nét được hiển thị theo từng Stem để đồng bộ độ dày nét chữ hiển thị trên khung hình.
  • Quá trình phân loại thân nét thực tế và làm tròn vào các Stem lại được quy đổi ra Pixel để xét. Sử dụng đơn vị 1/16 Pixel. Nếu đặt Stem Snap Precision là 16/16 thì FontLab hiểu là chiều rộng thân thực tế chênh lệch không quá 1 Pixel sẽ được làm tròn vào Stem. Còn đặt Stem Snap Precision là 32/16 thì chiều rộng thân thực tế chênh lệch không quá 2 Pixel vẫn được làm tròn vào Stem. Nếu độ chênh lệch lớn hơn giá trị Stem Snap Precision thì không làm tròn vào Stem. Chiều rộng thân sẽ được Raster hóa mặc định theo tỉ lệ tuyến tính.

Không sử dụng vùng canh chỉnh TrueType khi hiển thị lớn hơn kích thước PPM này.

  • Đối với kích thước hiển thị PPM nhỏ thì việc canh chỉnh điểm theo vùng canh chỉnh là cần thiết. Để triệt tiêu những Pixel thừa gây biến dạng ký tự. Nhưng ở kích thước PPM lớn thì hoàn toàn có thể hiển thị chính xác hình dáng chữ thực tế, không xảy ra lỗi làm tròn quá độ. Trường No Zone Alignment Above cho phép khai báo giới hạn tối đa của kích thước PPM. Lớn hơn PPM này thì vùng canh chỉnh không được áp dụng và các Hint canh chỉnh đỉnh. Hint canh chỉnh đáy sẽ không được áp dụng.

Không áp dụng Hinting TrueType khi hiển thị lớn hơn kích thước PPM này.

Quá trình Hinting chỉ hữu ích khi hiển thị ở kích thước PPM thấp. Đến một kích thước PPM nhất định thì quá trình Raster hóa sẽ không tạo ra lỗi hiển thị nữa. Không cần tiếp tục thực hiện quá trình Hinting. Nếu khai báo No Hinting Above bằng 0 thì Hinting TrueType sẽ không bao giờ dừng hoạt động.

Các kích thước PPM được hiển thị trên Glyph Waterfall.

FontLab 7 cho phép chỉnh sửa các kích thước PPM hiển thị trên bản đồ Glyph Waterfall.

Các kích thước PPM được hiển thị trên Text Waterfall.

FontLab 7 cho phép chỉnh sửa các kích thước PPM hiển thị trên bản đổ Text Waterfall.

Bổ sung chuỗi ký tự theo ngữ cảnh cho bảng TrueType Hinting.

Xem thêm nhiều bài hướng dẫn sử dụng FontLab 7 tại [ Sổ tay hướng dẫn sử dụng FontLab 7 ].
Theo dõi Fanpage Thư viện thiết kế bỏ túi để xem thêm nhiều bài viết hữu ích.
Chúc các bạn sức khỏe và thành công!

Hướng dẫn sử dụng | FontLab 7 | FontLab 8 | Thiết kế Font chữ | Việt hóa Font chữ

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Chuyển lên trên