''
'' This code is part of Document Solutions for Word demos.
'' Copyright (c) MESCIUS inc. All rights reserved.
''
Imports System.IO
Imports System.Drawing
Imports System.Collections.Generic
Imports GrapeCity.Documents.Word
Imports GrapeCity.Documents.Drawing
Imports GrapeCity.Documents.Pdf
Imports GrapeCity.Documents.Text
'' This sample demonstrates how to render short upright Latin text or numbers
'' in a block of vertical text. This is used in Chinese, Japanese and
'' Korean vertical text. In CSS this is referred to using the Japanese
'' name 縦中横 (tate chu yoko). In MS Word, this is referred to as
'' Horizontal In Vertical, and can be set using the Style.Font.EastAsianLayout.HorizontalInVertical
'' property.
Public Class TateChuYoko
Public Function CreateDocx() As GcWordDocument
Dim doc = New GcWordDocument()
doc.Body.Sections.First.PageSetup.TextFlowDirection = TextFlowDirection.TopToBottomRightToLeft
'' Paragraph style for main caption:
Dim sMainCaption = doc.Styles.Add("My Main Caption", StyleType.Paragraph)
sMainCaption.Font.Name = "MS PGothic"
sMainCaption.Font.Bold = True
sMainCaption.Font.Size = 14
sMainCaption.Font.Color.RGB = Color.DarkBlue
sMainCaption.ParagraphFormat.KeepWithNext = True
'' Paragraph style for other captions:
Dim sCaption = doc.Styles.Add("My Caption", StyleType.Paragraph)
sCaption.BaseStyle = sMainCaption
sCaption.Font.Size = sMainCaption.Font.Size - 1
'' Paragraph style for text:
Dim sText = doc.Styles.Add("My Text", StyleType.Paragraph)
sText.Font.Name = "MS PGothic"
sText.Font.Size = sCaption.Font.Size - 1
sText.ParagraphFormat.KeepTogether = True
'' Char style for 'Tate Chu Oko' text fragments:
Dim sTate = doc.Styles.Add("My TateChuOko", StyleType.Character)
sTate.Font.EastAsianLayout.HorizontalInVertical = True
Dim pars = doc.Body.Sections.Last.GetRange().Paragraphs
Dim par = pars.Add(sMainCaption)
Dim runs = par.GetRange().Runs
runs.Add("PDF", sTate)
runs.Add("ファイルをコードから")
runs.Add("API", sTate)
runs.Add("を利用することで操作できます。クロスプラットフォーム環境で動作するアプリケーションの開発を支援する")
runs.Add("API", sTate)
runs.Add("ライブラリです。")
'' Item 1
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add("PDF", sTate)
runs.Add("用の包括的な")
runs.Add("API", sTate)
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add("PDF", sTate)
runs.Add("バージョン「")
runs.Add("1.7", sTate)
runs.Add("」に準拠した")
runs.Add("API", sTate)
runs.Add("を提供し、レイアウトや機能を損なうことなく、豊富な機能を備えた")
runs.Add("PDF", sTate)
runs.Add("文書を生成、編集、保存できます。")
'' Item 2
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add("完全なテキスト描画")
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add("PDF", sTate)
runs.Add("文書にテキストの描画情報が保持されます。テキストと段落の書式、特殊文字、複数の言語、縦書き、テキスト角度などが保持さるので、完全な形でテキスト描画を再現できます。")
'' Item 3
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add(".NET Standard 2.0 準拠")
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add(".NET Core、.NET Framework、Xamarinで動作するアプリケーションを開発できます。Windows、macOS、Linuxなどクロスプラットフォーム環境で動作可能です。")
'' Item 4
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add("100", sTate)
runs.Add("を超える")
runs.Add("PDF", sTate)
runs.Add("操作機能")
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add("ページの追加や削除、ページサイズ、向きの変更だけでなく、ファイルの圧縮、")
runs.Add("Web", sTate)
runs.Add("に最適化した")
runs.Add("PDF", sTate)
runs.Add("の生成など高度な機能も")
runs.Add("API", sTate)
runs.Add("操作で実現します。また、署名からセキュリティ機能まで様々な機能を含んだ")
runs.Add("PDF", sTate)
runs.Add("フォームを生成可能です。")
'' Item 5
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add("高速、軽量アーキテクチャ")
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add("軽量")
runs.Add("API", sTate)
runs.Add("アーキテクチャでメモリと時間を節約できます。")
runs.Add("また、他の生成用ツールに依存せずドキュメントを生成可能です。")
'' 6
par = pars.Add(sCaption)
runs = par.GetRange().Runs
runs.Add("クラウドアプリケーション展開")
par = pars.Add(sText)
runs = par.GetRange().Runs
runs.Add("Azure、AWSなどのサービスに配置するクラウドアプリケーションの開発で利用可能です。仮想マシン、コンテナ、サーバーレスなどの方法で配置できます。")
'' Done:
Return doc
End Function
End Class