أحرف صغيرة / خطوط متعددة وغامقة باستخدام "DrawString" في GDI +

StackOverflow https://stackoverflow.com/questions/625161

سؤال

أريد أن أكتب بعض النص باستخدام Smallcaps بالاشتراك مع خطوط مختلفة لكلمات مختلفة.

للتوضيح، قد أرغب في ظهور الرسالة "مرحبًا بكم في موقعنا الجديد" والتي يتم إنشاؤها في ملف PNG لرأس الصفحة.

  • النص سيكون Smallcaps - كل شيء مكتوب بالأحرف الكبيرة ولكن الحروف "W" و"N" و"W" أكبر قليلاً.
  • سيكون "موقع الويب الجديد" بخط مختلف عن بقية النص.

هل هناك طريقة يمكنني من خلالها القيام بذلك دون القيام بذلك يدويًا بالكامل؟

إن القيام بشيء مثل هذا هو من الناحية النظرية ما أريد القيام به:

 graphics.DrawString("<font size=2>W</font>ELCOME TO OUR <b><font size=2>N</font>" +
                     "EW <font size=2>W</font>EBSITE</b>");

أفضل نهج يمكن أن أجده حتى الآن هنا, ، ولكنني أشعر بالقلق من أنني سأواجه كل المتاعب للقيام بذلك يدويًا وينتهي بي الأمر ببعض الأمور الفظيعة تقنين الأحرف أو التتبع مشاكل.

يحرر: كان يجب أن أذكر أن هذا يتم داخل ASP.NET لذا يجب أن يكون سريعًا وبسيطًا قدر الإمكان.أريد أن يكون آليًا حتى أتمكن من الترجمة بسهولة ولا أضطر إلى إنشاء الكثير من الصور الصغيرة.

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

المحلول

يبدو أنك يجب أن تستخدم RichTextBox هنا حقًا ...توجد طريقة لاستخراج صورة نقطية من RichTextBox والتي يمكنك بعد ذلك تقديمها كصورة نقطية إلى سياق الرسومات الخاص بك.بالطبع، ستحتاج إلى إجراء اتصال Managed C++ هنا ولا أعرف ما إذا كنت قادرًا على القيام بذلك في مشروعك.

بخلاف ذلك، أعتقد أنك ستحتاج إلى القيام بذلك يدويًا باستخدام DrawString وMeasureString، وهو أمر مؤلم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top