سؤال

أنا أعمل على تحويل ملف EMF إلى ملف RTF.

أواجه مشكلة في تحويل إحداثيات (x ، y) (في سجل emr_lineto) إلى Twips.

لذا يرجى نشر عامل التحويل.

هل كانت مفيدة؟

المحلول

twip هو العشرين من نقطة ، والنقطة هي 1/72 بوصة. لذلك إذا لم يكن هناك تحجيم في metafile ، فيجب أن يكون TWIP 1/1440 بوصة. إذا كنت تتحول من ، على سبيل المثال ، شاشة وحدات البكسل إلى Twips ، فستستخدم GetDevicEcaps لمعرفة عدد وحدات البكسل لكل بوصة. لذا؛

TwipsX = PixelsX * 1440 div GetDeviceCaps(DC, LOGPIXELSX);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top