Tự động cài đặt font trong tài liệu Word Microsoft Word cho phép chúng ta nhúng phông chữ chung với tài liệu để đảm bảo hiển thị đúng trên các máy tính khác.. Lúc này, các phông chữ cần
Trang 1Tự động cài đặt font trong tài liệu Word Microsoft Word cho phép chúng ta nhúng phông chữ chung với tài liệu để đảm bảo hiển thị đúng trên các máy tính khác Cách thức hiện như sau:
Vào menu File> Save as, trong mục Tools chọn chức năng Save Options
- Xuất hiện hộp thoại Save, đánh dấu chọn mục Embed TrueType fonts (Hình 1) rồi nhấn OK để lưu trữ tài liệu
Lúc này, các phông chữ cần thiết sẽ được “nhúng” vào tài liệu của bạn
Tuy nhiên với cách làm như trên, các phông chữ cần thiết luôn được lưu trữ cùng với mọi tài liệu của bạn, giả sử bạn có 100 tài liệu sử dụng phông chữ VNI-Viettay thì phông này sẽ được nhúng đúng 100 lần trong 100 tài liệu đó gây lãng phí vô ích
Có một cách khác tiết kiệm và hiệu quả hơn:
- Tạo một thư mục tên là fonts đặt cùng thư mục với tài liệu Word của bạn
- Sao chép các phông chữ cần thiết vào thư mục fonts vừa tạo
- Mở tài liệu Word, nhấn tổ hợp phím Alt+F11
hoặc vào menu Tools > Macro > Visual Basic
Editor để mở cửa sổ Microsoft Visual Basic
Bạn nhấn đúp chuột vào mục Project
(<ten_tai_lieu_cua_ban>) > Microsoft Word
Objects > This Document để mở cửa sổ
soạn thảo lệnh và nhập vào đoạn mã sau:
‘Các khai báo
Private Declare Function AddFontResource
Lib “gdi32” Alias “AddFontResourceA” (ByVal
lpFileName As String) As Long
Private Declare Function
RemoveFontResource Lib “gdi32” Alias
“RemoveFontResourceA” (ByVal lpFileName
As String) As Long
Private Declare Function SendMessage Lib
“user32” Alias “SendMessageA” (ByVal hwnd
As Long, ByVal wMsg As Long, ByVal
wParam As Long, ByVal lParam As Any) As
Long
Private Declare Function GetActiveWindow Lib “user32” () As Long
Private Const WM_FONTCHANGE = &H1D
‘Tự động cài đặt phông chữ khi tài liệu được mở
Private Sub Document_Open()
Hình 1
Trang 2Dim File As String
File = Dir$(ThisDocument.Path & “\fonts\” & “*.ttf”)
Do While Len(File)
AddFontResource(ThisDocument.Path & “\fonts\” & File)
File = Dir$
Loop
SendMessage(GetActiveWindow, WM_FONTCHANGE, 0, 0)
End Sub
‘Gỡ bỏ các phông chữ khi đóng tài liệu
Private Sub Document_Close()
Dim File As String
File = Dir$(ThisDocument.Path & “\fonts\” & “*.ttf”)
Do While Len(File)
RemoveFontResource(ThisDocument.Path & “\fonts\” & File)
File = Dir$
Loop
End Sub
Lưu đoạn mã lệnh và đóng cửa sổ Microsoft Visual Basic Đóng và mở lại tài liệu Word để các thay đổi có hiệu lực
Như vậy khi bạn mở tài liệu của mình trên máy tính khác, chương trình sẽ tự động cài đặt các phông chữ trong thư mục fonts lên máy tính để bạn làm việc
Ghi chú: Để đoạn mã lệnh trên được thực hiện, bạn phải thiết lập chế độ Security của Word là Medium (vào menu Tools > Macro > Security, chọn thẻ Security Level và chọn mục Medium) Khi
mở tài liệu, Word sẽ hiện hộp thông báo Security Warning, bạn chọn Enable Macros để chương trình cài đặt phông thực thi
Bạn có thể cải tiến bằng cách viết riêng một tài liệu Word chỉ cho mục đích cài đặt phông chữ và một tài liệu khác cho mục đích gỡ bỏ các phông chữ vừa cài
Ưu điểm của cách làm này là tiết kiệm được dung lượng lưu trữ nếu có nhiều tài liệu sử dụng chung một số font chữ nào đó (có ích khi bạn cần lưu trữ các tài liệu lên đĩa CD chẳng hạn) và bạn cũng dễ dàng quản lý các font chữ hơn