質問

私の目標は、Blackberry の Mobipocket リーダーで読める電子書籍を作成することです。問題は、テキストに Blackberry でサポートされていない UTF-8 文字が含まれているため、ブラック ボックスとして表示されることです。

この電子ブックには、以下のような参考用の英語とパンジャブ語の単語のリストが含まれています。

bait          ਦਾਣਾ
baked       ਭੁੰਨਿਆ
balance     ਵਿਚਾਰ

私が考えたのは、パンジャブ語を GIF または PNG ファイルに変換して、リストを HTML テーブルに書き込むことでした。次に、この HTML ファイルを電子書籍に含めます。現在、すべての単語は Access データベースに存在しますが、生成ルーチンへの入力のために別のフォームに簡単にエクスポートできます。

質問: VB、VBA、または C# を使用して、画像を作成し、表に英語の単語と画像を含む HTML ファイルを出力するルーチンを記述するのはどれほど難しいでしょうか。

役に立ちましたか?

解決 2

VBの使用

Sub createPNG(ByVal pngString As String, ByVal pngName As String)

' Set up Font
Dim pngFont As New Font("Raavi", 14)

' Create a bitmap so we can create the Grapics object 
Dim bm As Bitmap = New Bitmap(1, 1)
Dim gs As Graphics = Graphics.FromImage(bm)

' Measure string.
Dim pngSize As SizeF = gs.MeasureString(pngString, pngFont)

' Resize the bitmap so the width and height of the text 
bm = New Bitmap(Convert.ToInt32(pngSize.Width), Convert.ToInt32(pngSize.Height))

' Render the bitmap 
gs = Graphics.FromImage(bm)
gs.Clear(Color.White)
gs.TextRenderingHint = TextRenderingHint.AntiAlias
gs.DrawString(pngString, pngFont, Brushes.Firebrick, 0, 0)
gs.Flush()


'Saving this as a PNG file
Dim myFileOut As FileStream = New FileStream(pngName + ".png", FileMode.Create)
bm.Save(myFileOut, ImageFormat.Png)
myFileOut.Close()
End Sub

他のヒント

Python には、この種の問題を処理するための簡単なライブラリがあります。ただし、簡単な VB/C# ソリューションがあるかどうかはわかりません。

Python では、次のようにします。 PILライブラリ これと同様のコード(私が見つけた) ここ):

# creates a 50x50 pixel black box with hello world written in white, 8 point Arial text
import Image, ImageDraw, ImageFont

i = Image.new("RGB", (50,50))
d = ImageDraw.Draw(i)
f = ImageFont.truetype("Arial.ttf", 8)
d.text((0,0), "hello world", font=f)
i.save(open("helloworld.png", "wb"), "PNG")

すでに他の言語に精通している場合、Python は非常に簡単に習得できるはずであり、VB/C# とは異なり、ほぼすべてのプラットフォームで動作します。Python は、生成された画像に合わせて HTML を生成するのにも役立ちます。これにはいくつかの例があります ここ.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top