次のようなペルシャ文化の数字を持つ変数があります:
string Value="۱۰۳۶۷۵۱";
この数字を英語版に変換し、この
Value="1036751";
のように文字列に再度保存します。
スイッチケースの代わりに文化情報などの簡単な方法を使用できる場合、どうすればこれを行うことができるか教えてください
次のようなペルシャ文化の数字を持つ変数があります:
string Value="۱۰۳۶۷۵۱";
この数字を英語版に変換し、この
Value="1036751";
のように文字列に再度保存します。
スイッチケースの代わりに文化情報などの簡単な方法を使用できる場合、どうすればこれを行うことができるか教えてください
いくつかのツールを使用してそれを行うことができます。iTextPdfSharp はおそらくそれを行うことができます。ドキュメントを開いて、ブックマークを含むカタログ内のツリーをたどることになります。それらのコードは問題なく動作しますが、ツリーの構造を理解できるように仕様をダウンロードしてください。私は元のバージョンの Acrobat を使用していましたが、同僚のエンジニアの多くは、ブックマーク ツリーが少し複雑すぎると感じていました。
BitMiracle も同様のコードを提供しています。彼らは定期的に Stack Overflow をパトロールしているので、彼らからの回答も見られるかもしれません (こんにちは!) -ブックマークのオーサリングに関する彼らの作業のサンプルをここで見ることができます。
お金を払っても構わないと思っているなら、AtalasoftのDotPdfを使えば簡単です(免責事項: 私は Atalasoft で働いており、ほとんどすべての DotPdf を書きました)。私たちの API では、可能な限り構造の複雑さを隠そうとします (たとえば、ブックマークがクリックされたときに実行されるアクションのチェーンのチェーンを反復したい場合は、ツリー ウォークではなく foreach です)。ブックマーク ツリーを標準List<T>
コレクションにラップしました。
public void WalkBookmarks(Stream pdf)
{
// open the doc
PdfDocument doc = new PdfDocument(pdf);
if (doc.BookmarkTree != null)
{
// walk the list of top level bookmarks
WalkBookmarks(doc.BookmarkTree.Bookmarks, 0);
}
}
public void WalkBookmarks(PdfBookmarkList list, int depth)
{
if (list == null) return;
foreach (PdfBookmark bookmark in list)
{
// indent to the depth of the list and write the Text
// you can also get the color, basic font styling and
// the action associated with the bookmark
for (i = 0; i < depth; i++) Console.Write(" ");
Console.Writeline(bookmark.Text);
// recurse on any children
WalkBookmarks(bookmark.Children, depth + 1);
}
}
PDF には、「目次」と呼ばれる少なくとも 3 つの異なるものを含めることができます。
3番目のケースのすぐに使えるソリューションや実装が簡単なソリューションについては知りません。他のケースはより単純です。
最初のケースでは、ほぼすべての PDF ライブラリで対応できます。@plinth (こんにちは!) は、そのような場合に少なくとも 2 つの解決策を提供しました。
2 番目のケースでは、Docotic.Pdf ライブラリを使用してソリューションを実装できます。基本的に、次のことを試みることができます。
あなたのケースが「ハイパーリンクのリスト」である場合は、リンク ターゲットからのテキストの抽出サンプルから手がかりが得られる可能性があります。
免責事項: 私は Docotic.Pdf ライブラリのベンダーである Bit Miracle で働いています。
PDF ファイル (http://www.pdflib.com/) を読み取るには、pdflib のような pdf ライブラリを使用する必要があります。それはうまくいくはずです、頑張ってください!