cuốn sách gpt4 ai đã làm

Làm cách nào để tìm thấy phông chữ thực tế được cuộc gọi CreateFont của tôi sử dụng?

In lại Tác giả: Hồ Xil Thời gian cập nhật: 2023-11-01 12:27:35 26 4
mua khóa gpt4 Nike

Trong Windows,CreateFontIndirect()Nếu phông chữ được yêu cầu không được yêu cầu, cuộc gọi có thể âm thầm thay thế phông chữ tương thích. GetObject()Cuộc gọi không phản ánh sự thay thế này; nó trả về như cũ; LOGFONT. làm thế nào để tìm thấythật sự Phông chữ được tạo? Ngoài ra, làm cách nào tôi có thể buộc Windows chỉ trả lại phông chữ chính xác được yêu cầu?

câu trả lời hay nhất

Trong Windows, lệnh gọi CreateFontIndirect() có thể âm thầm thay thế các phông chữ tương thích nếu phông chữ được yêu cầu không được yêu cầu. Lệnh gọi GetObject() không phản ánh sự thay thế này; nó trả về cùng một LOGFONT được truyền vào.

Không phải CreateFontIndirect thực hiện thay thế. Sự thay thế xảy ra khi phông chữ được chọn vào DC. CreateFontIndirect chỉ cung cấp cho bạn quyền điều khiển bản sao nội bộ của LOGFONT. Đây là lý do tại sao GetObject trả về cùng một LOGFONT.

Làm cách nào tôi có thể tìm thấy phông chữ nào Thực ra tạo?

Nếu bạn chọn HFONT trong DC mục tiêu, bạn có thể yêu cầu DC cung cấp thông tin về phông chữ thực sự đã được chọn để phù hợp nhất với LOGFONT.

  • Tên khuôn mặt có sẵn GetTextFace .
  • Bạn có thể sử dụng GetTextMetrics Lấy chỉ số.
  • Nếu phông chữ được chọn là TrueType hoặc OpenType, bạn có thể sử dụng GetOutlineTextMetrics Nhận số liệu bổ sung.

Về cơ bản, điều này cho bạn biết phông chữ nào thực sự được tạo ra.

Người kể chuyện:

Khi thực hiện những việc như xem trước bản in, bạn có thể bắt đầu bằng LOGFONT, chọn nó vào DC (hoặc IC) của máy in, lấy chi tiết về phông chữ thực tế (máy in thường thay thế phông chữ), sau đó tạo một LOGFONT mới mang tính đại diện hơn cho Phông chữ thực tế. Chọn nó vào màn hình DC, với chuyển đổi kích thước phù hợp - gần giống với những gì người dùng thực sự nhận được.

Windows - Làm cách nào để tìm thấy phông chữ thực tế được lệnh gọi CreateFont của tôi sử dụng? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7154858/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress