Miradorで画像を表示し、CETEIceanでテキストを表示するサンプルアプリ

概要 TEI/XMLファイルを読み込み、Miradorで画像を表示し、CETEIceanでテキストを表示するサンプルアプリを作成しました。以下のURLからお試しいただけます。 デモサイト https://nakamura196.github.io/ceteicean-mirador/ 背景 これまでにも、同様の機能を提供するアプリケーションを開発してきました。 Next.js を使用した実装例 XSLT を使用した実装例 今回は、HTMLとプレーンなJavaScriptのみを使用して実装する方法をご紹介します。 対象データ 以下の校異源氏物語テキストDBを対象とします。 https://kouigenjimonogatari.github.io/ 実装方法 ソースコードは以下のリポジトリで公開しています。 https://github.com/nakamura196/ceteicean-mirador 実装のポイント 1. CETEIcean の behaviors を利用した pb タグの処理 以下のコードでは、CETEIcean の behaviors を利用して pb タグのクリック時の挙動を定義しています。 c } t ) . t } ; a e , d i g f p } d : r i b B a g : l i } c i } c p p } r e { 不 p u p e f o f o b b ) e h 要 h r b f t p n c p n . . c i } ; t a な i e タ u 属 ( b c s ( o b ペ s t ク a o f u v 要 c : グ n p 性 e . o t c n . ー t e リ d n c i } r i 素 : の c b を l s r o s s ジ x ッ d s ( o f n o を 処 t 引 . e r c r t e 番 p t ク E t z n c i } r 非 理 i = き h t e o r t 号 a C イ v o s ( o f p s 表 o 継 a A s r e z A を g o ベ e z n t z n g b ( 示 = n d ぐ s t p r s o t 表 e n ン n o e o s ( o ; { = > o A t 属 e p n t 示 N t ト t n I z n t s T > ( c t r 性 s ) e r u e を L e d o e u o d e u t i か p I i m n 追 i I ) n E s r P d o l m r b ら { d b t 加 s d e l u f a o c ) e i u z = u = t { E e r a g c u n b t o = t = e = l m f c e u m { t u e n e e e n e e a e ( m e . t ( e l c ( l ` e t m n c E s e n c e " I . o " . [ r h e t e l u n t r ( n d g r d g P ( i n ) E e r t . e " " を e r a e a " s t l m f . c a n , 取 t e t t g c . { e e a c r t " 得 A s a A e l g = m n c r e e ) e t p - t i e e t e e a E ) l t . z t $ c t d n E a t l . r r o r { k A o t & l t e e { g i e n i p " t c & e e D m e b p e b a , t u = m D o e t u l - u g r m s e o c n A t a i t e f i e z u n c u t t e c d e N u b n o r t u m ( t ( e " ( u n u t n f . m e " r " ( , " m c t . e a g e n t i c ' n } t e q E c e n t e b o # z " ] i ( u l e t t F i u r ' o ) ` o " e e E A F r - t r , n ; n d r m l t r a p e e e ( a y e e t a g b ( s I ) t S n m r g m " " p d a e t e i m e ) n " ) ) " { - l . n b e n ; " ) ; ; " z e c t u n t ) ; ; o c l . t t ( ) n t o h e ( ) ; e o s a ( ) , - r e s " , i ( s A s d ` t t a " t ( t m ) e " r e ; i t i A - e b s z i u " o - t ) n s e ) e u ( ; [ r " i f s d a a = c m " e e $ " A { ) s z ; " o ) n ) e I { d } " ] ` ) ; 2. Mirador でのページ遷移処理 pb タグをクリックした際に、TEI/XML ファイルから Canvas の URI を取得し、Mirador のページ遷移を実行します。 ...

2025年3月14日 · 6 分 · Nakamura

Next.js + CETEIcean + React TEI Routerを使ったビューア開発

概要 Next.js、CETEIcean、React TEI Routerを組み合わせたTEI/XMLビューアの開発についての備忘録です。 背景 CETEIceanは、TEI/XML を HTML5 に変換する JavaScript ライブラリです。 https://github.com/TEIC/CETEIcean そして、React TEI Routerは、CETEIcean をベースに React コンポーネントで TEI/XML を構造化して表示できるライブラリです。以下のように説明されています。 https://github.com/pfefferniels/react-teirouter TEI for React using CETEIcean and routes これらを組み合わせることで、Next.js において TEI/XML をカスタマイズして表示できるビューア を作成しました。 リポジトリ 以下がサンプルリポジトリです。 https://github.com/nakamura196/next-ceteicean-router 実際に動作するデモも用意しています。 https://next-ceteicean-router.vercel.app/ 実装 Next.js のページコンポーネント (page.tsx) CETEIcean を利用して XML を変換し、カスタムコンポーネントで描画します。 i i e } m m x p p p c r o o o o e r r r n < t t t t s T / u t E < T r R R d I t / E n e e e x e < t I a n f m x x b / e > < c d a l m t o < < b x ` R t e u C l > d d / d / o t ; e r l o n y i 私 d i < < d d > n f t n s > v の i v p p / i y d r f t = 名 v > p v > e o r f e " t 前 > s s > > r m o u n h y は t t m n t t p < y y x " c t e p l l m r " t = p = e e e l e @ i : " r = = C a / o ` / o s " " o c c n < / r N c c n t o ? w i a o o t " m A x w g m l l e ; p p m w i e o o n o p l . n r r t n ( t a c : : = e ) v e l o { n e i " r g g x t { r - > r r r m s s c e e e l / i . s e e C t o o p n n o e n r = ; ; n i = g " " " t " " / # > > e ; 1 n i こ こ n . s d ん ん t 0 / 1 に ば } " 1 " ち ん . > は は e 0 田 < > n " 中 / < ; c > 太 p s o 郎 > e d < g i / n p s g e t = r y " s l U N e T a = F m " - e c 8 > o " で l ? す o > 。 r : b l u e ; " > x x x < / s e g > TEIレンダリングコンポーネント CETEIcean を使って XML を HTML5 に変換。 TEIRender + TEIRoute を使い、TEI 要素ごとにカスタムコンポーネントを適用。 import { TEIRender, TEIRoute } from "react-teirouter";を使用した上で、要素毎にコンポーネントを用意しています。 ...

2025年3月2日 · 10 分 · Nakamura

XSLTを使いながらTEI/XMLファイルを編集する

概要 XSLTを使いながらTEI/XMLファイルを編集する方法の一例を紹介します。 関連 以下の記事で、VSCodeの拡張機能を使いながら、XSLTの結果をプレビューする方法を紹介しました。 本記事では、上記の拡張機能を使用せず、より単純にXSLTを使いながらTEI/XMLファイルを編集する方法を紹介します。 拡張機能のインストール VSCodeで以下の拡張機能をインストールします。 Live Server https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer Scholarly XML https://marketplace.visualstudio.com/items?itemName=raffazizzi.sxml Auto Close Tag https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-close-tag 加えて、以下の2つの拡張機能が、Scholarly XMLにおいて推奨されています。ただ、私の使い方では不便になってしまう場面もあったので、とりあえず任意とします。 Auto Rename Tag https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-rename-tag Close HTML/XML tag https://marketplace.visualstudio.com/items?itemName=Compulim.compulim-vscode-closetag ファイルのダウンロードなど 以下のサンプルリポジトリを対象にします。 https://github.com/nakamura196/tei-xml-xslt-vscode 以下により、ファイルをダウンロードします。そして、VSCodeで開きます。 g c i o t d e c l t o e n i e - x h m t l t - p x s s : l / t / - g v i s t c h o u d b e . c o m / n a k a m u r a 1 9 6 / t e i - x m l - x s l t - v s c o d e そして、画面右下のGo Liveをクリックします。 ...

2025年1月23日 · 1 分 · Nakamura

VSCodeとXSLTを用いたTEI/XMLのリアルタイムプレビュー

概要 VSCodeとXSLTを用いたTEI/XMLのリアルタイムプレビュー環境を試作したので、備忘録です。 挙動 動作例は以下です。TEI/XMLファイルを編集し、保存すると、ブラウザの表示内容が更新されます。 https://youtu.be/ZParCRUc5AY?si=-aHHi3bIZGWoJYnP 準備 以下の拡張機能をインストールします。 Live Server Trigger Task on Save TEI/XMLを保存した際に、Trigger Task on SaveによってXSLTを実行し、変換されたHTMLファイルをLive Serverで閲覧します。 リポジトリ サンプルコードを以下に格納しています。 https://github.com/nakamura196/tei-xml-xslt-vscode XSLTを行うにあたり、xslt3をインストールします。 g c n i d p t m t c e i l i n o - s n x t e m a l l h - l t x t s p l s t : - / / s g c i o t d h e u b . c o m / n a k a m u r a 1 9 6 / t e i - x m l - x s l t - v s c o d e settings.jsonとtasks.json .vscodeフォルダに、settings.jsonとtasks.jsonを格納しています。 ...

2025年1月15日 · 29 分 · Nakamura

校異源氏物語テキストDBのTEI/XMLからPDFを作成する

概要 校異源氏物語テキストDBは、『校異源氏物語』のテキストデータを公開するデータベースです。 https://kouigenjimonogatari.github.io/ 今回、本DBに以下のようなPDFファイルを追加しました。 https://kouigenjimonogatari.github.io/output/01/main.pdf 本記事は、上記のようなPDFファイルを、XSLTとTeXを使って作成します。 リポジトリのクローン 以下のように、リポジトリをクローンします。 g i t c l o n e - d e p t h 1 h t t p s : / / g i t h u b . c o m / k o u i g e n j i m o n o g a t a r i / k o u i g e n j i m o n o g a t a r i . g i t h u b . i o そして以下のコマンドにより、xslt3をインストールします。 ...

2025年1月14日 · 8 分 · Nakamura

XSLTを使ってIIIFとTEIの対照表示を実現する

概要 XSLTを使ってIIIFとTEIの対照表示を実現してみる機会がありましたので、備忘録です。 結果は以下からご確認いただけます。「校異源氏物語テキストDB」を利用しています。 https://kouigenjimonogatari.github.io/xml/xsl/01.xml 背景 TEI/XMLの可視化にあたって、これまでは、TEI XMLをHTMLに変換してブラウザ上で表示するためのJavaScriptライブラリであるCETEICeanを使うことが多かったです。 これらの取り組みではJavaScriptのフレームワークと合わせて、柔軟な開発が可能でした。 しかし、この方法ではTEI/XMLとは別に、ビューアのデプロイが必要であるなど、課題を感じる点もありました。 対策 そこで、XSLTを使ったIIIFとTEIの対照表示に取り組みました。以下のXSLファイルを用意しました。実装にあたっては、ChatGPTを利用しました。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/blob/master/xsl/mirador.xsl そして、XMLファイルからは、以下のように参照します。相対パスとなっている点は、適宜読み替えてください。 < < < ? ? T < x x E t < m m I e f < l l i i t < < - x H l i t a v s m e e t i u e t l a D l t t r y n d e e l h s l s e s S e o i e = r c t > r o s " > > m 校 > n h h t 異 池 = e t > 源 田 " e t 氏 亀 1 t p 物 鑑 . : 語 < 0 t / ・ / " y / き a p w り u ? e w つ t > = w ぼ h " . < t t r e e t > x i i t - t / c l x . e s o > l r " g / h n r s e / f 1 = . " 0 . " . > / . . / x s l / m i r a d o r . x s l " ? > これにより、以下のようなXMLファイルをブラウザで表示すると、 ...

2024年11月2日 · 2 分 · Nakamura

LEAF WriterのEditor Toolbarをカスタマイズする

概要 LEAF Writerでは、画面上部にタグの挿入をサポートするボタンが提供されています。本記事では、その編集方法について紹介します。 結果、以下のように、<app><lem>あああ</lem><rdg>いいい</rdg></app>を挿入する機能を追加しました。 https://youtu.be/XMnRP7s2atw 編集 以下のファイルを編集します。 packages/cwrc-leafwriter/src/components/editorToolbar/index.tsx 以下のように、人名や地名のタグをサポートする機能が設定されています。例えば、以下では、organizationに関する記述をコメントアウトしています。 c o n { } { { } { } { } s , , , , t g h i o } t t t g c g d h i o t t c g d h i o t t c g d h i o t t r i c n , i o y r o r i i c n i y o r i i c n i y o r i i c n i y i o d o C i c c c s } t o p o l o s d o C t p l o s d o C t p l o s d o C t p t u e n l f o o o h ) l l e u o u a e n l l e o u a e n l l e o u a e n l l e e p : : i n n n o e p u ; e t : p r p b : : i e : r p b : : i e : r p b : : i e : m : c ( s s s w v o s : i : : : l c : : : l c : : : l c : s i ' k ! t t t C e s e p ' e i e k ' e i e k ' e i e k ' : ' s i : c o a n i S ' : b ' e ' d s n : ' i e ' d s n : ' i e ' d s n : ' i a R n o r p p n n t t e T u a n a : R t T c n a : R t T c n a : R t T c ( c e s n e o o t c S i l a ' t c t c e i a o t c e i a o t c e i a o M t a e t c s s e h o o e g A t t i t ! a t g n i t ! a t g n i t ! a t g n e i d r a t X Y x o u n c ' d o i t i i d y B t i i d y B t i i d y B n o o t = i t r r : t , d n o y o s o . = P u y o s o . = P u y o s o . = O u u n n T > n = = = M E c i ' n . n S n p > e t . n S n p > l t . n S n o > r t I ' l a e e l e { o T , ' p ' u l e r t p ' u l l a t o ' u l r g t t , y g { r c r r n : : n a , e , p y r w s o l , p y a w c o r , p y g w a o e , ' . o e e u p : g r p , s i o n a p , c i e n g p , a i n n m , c n c c ( c ' o ' t s o o n n ' c o e n ' ' a o n n i ' u t t t { o r s t , y o r n d ' , e r . d , , n r i d z , | r a . . n i X r p n t . o , . t i o i t z o a r i l t t b , u e . e i w c e c w z e a w t I e n e o a b e : c d c . o d o . a d t . i t n e f p i o p , o ( o w l ( n w t ( i w o e t r t n n o ' l ' n r o ' , r i ' o r n m ) . ; + e ' s d o p , i r p i o o n i ' ) c r , Y i r e t . l t n r . t , [ r u 3 . v . r e m a e . g i e ] e r 4 c } i m s r a c r c a c r t r ; u , d a o . i e . o n o . = u e r e i n t n ' t l i n t r n r r n ' a , ) a o z , a [ n t e ' , ) g , g r a g ; . n , , g g . t g g t e e m i e e , h r r a o r t i . . i n . B d a a n ' a o e d d , ) d u : d d , d n E E E d i n n n i s t t t n R i i i g e t t t C a y y y l d D D D i o i i i e n a a a n l l l l t y o o o R g g g e } ( ( ( c , ' ' ' t p p o ( e l r ) r a g ; s c a o e n n ' i ' ) z ) , a , t i o n ' ) , 結果、以下のように選択肢が限定されます。 ...

2024年10月31日 · 25 分 · Nakamura

LEAF WriterをNext.jsから使用する

概要 LEAF WriterをNext.jsから使用する方法について紹介します。 デモ 以下のURLからお試しいただけます。 https://leaf-writer-nextjs.vercel.app/ 以下が画面例です。ヘッダー部分がNext.jsを用いて追加した部分です。エディタ部分はLEAF Writerを使用しています。 ソースコードは以下でご確認いただけます。 https://github.com/nakamura196/leaf-writer-nextjs 使用方法 以下に記載があります。 https://gitlab.com/calincs/cwrc/leaf-writer/leaf-writer/-/tree/main/packages/cwrc-leafwriter?ref_type=heads 注意点として、div containerのidをleaf-writer-containerにする必要があります。これを行わない場合、スタイルが崩れることがわかりました。この点は、今後プルリクエストを送りたいと思います。 # c o c n o s n t s t c o c n o t n a t i a n i e n r e r = = d o d c o u c m u e m n e t n . t g . e g t e E t l E e l m e e m n e t n B t y B I y d I ( d ' ( # ' l # e l a e f a - f w - r w i r t i e t r e - r c ' o ) n ; t a i n e r ' ) ; まとめ LEAF Writerの応用にあたり、参考になりましたら幸いです。 ...

2024年10月29日 · 1 分 · Nakamura

Romaを使ってタグの属性に使用可能な値を限定する

概要 Romaを使ってタグの属性に使用可能な値を限定する方法に関する備忘録です。 背景 以下の記事で、タグに使用可能な属性を限定する方法を記載しました。 例えば、persNameタグには、key属性とtype属性のみを使用可能にする、といった具合です。 本記事では、さらに特定の属性で使用可能な値を限定します。例えば、type属性には、「右傍注」または「左傍注」のいずれかを設定する、といった具合です。 Romaでの設定 以下の記事を参考に、タグの属性の設定を行います。 ここでは、persNameタグにtype属性を設定済みとします。そして、以下のように、鉛筆アイコンをクリックします。 以下のように、属性に関する情報を編集するためのページに遷移します。ここで、「値」という項目において、「右傍注」「左傍注」といった値を登録します。合わせて、必要に応じて「説明」文も追加します。 Oxygen XML Editorでの表示例 rngファイルとしてダウンロードし、それをTEI/XMLからロードすることにより、Oxygen XML Editorでは以下のように表示されました。 LEAF Writerでの表示例 LEAF Writerでは、以下のように、セレクトボックスで選択肢が提示されました。 まとめ TEI/XMLの導入あたり、参考になりましたら幸いです。

2024年10月28日 · 1 分 · Nakamura

校異源氏物語テキストDBで公開するTEI/XMLファイルに対するDTS APIのGitHubリポジトリ

概要 以下の記事で紹介したAPIのGitHubリポジトリを公開しました。 リポジトリは以下です。 https://github.com/nakamura196/dts-typescript 不完全な点があるかと思いますが、参考になりましたら幸いです。 メモ vercelのrewrite 以下のように設定することで、/へのアクセスを/api/dtsにリダイレクトさせることができました。 { } " " ] " ] " ] v b , r , r e u e e r i w d s l { } r { } i { } i d i r o s t e n " e c " : " " s " " t " " " : s u " s d s s d p [ r s : o e " o e e 2 c e u s : u s r , " " [ r t r t m : : c i [ c i a e n e n n " " " a " a e s @ : t : t n r v i i t c e " " " / r n n : i c a " " " n e p : , : t d l i r e / / " " u x n d / / e . o t s a t d s r p s e ( c i " " . / , i d ) n t " d s , e " x , . t s " collectionのID コレクションのIDとして以下を使用しています。 ...

2024年9月4日 · 2 分 · Nakamura

校異源氏物語テキストDBで公開するTEI/XMLファイルに対するDTS APIを作成する

概要 校異源氏物語テキストDBで公開するTEI/XMLファイルに対するDTS(Distributed Text Services) APIを作成したので、備忘録です。 背景 校異源氏物語テキストDBは以下です。 https://kouigenjimonogatari.github.io/ TEI/XMLファイルを公開しています。 開発したDTS 開発したDTSは以下です。 https://dts-typescript.vercel.app/api/dts Express.jsをVercelに設置しています。 DTSは以下を参考にしてください。 MyCapytainライブラリ 以下の記事で、DTSをPythonから利用するライブラリを紹介しました。 本ライブラリを使用して、開発したDTSを利用してみます。 Create the resolver With the following line we create the resolver : f r r e o s m o l M v y e C r a p = y t H a t i t n p . D r t e s s R o e l s v o e l r v s e . r d ( t " s h . t a t p p i s _ : v / 1 / d i t m s p - o t r y t p e H s t c t r p i D p t t s . R v e e s r o c l e v l e . r a p p / a p i / d t s " ) Require metadata : let’s visit the catalog The following code is gonna find each text that is readable by Alpheios ...

2024年9月4日 · 20 分 · Nakamura

DTS(Distributed Text Services)を使ってみる

概要 DTS(Distributed Text Services)の使用方法を学ぶ機会があり、その備忘録です。 使用するAPI 以下で紹介されているAlpheios を使用します。 https://github.com/distributed-text-services/specifications/?tab=readme-ov-file#known-corpora-accessible-via-the-dts-api トップ https://texts.alpheios.net/api/dts collections, documents, navigationが使えることがわかります。 { } " " " " " " n @ @ c @ d a i t o c o v d y l o c i " p l n u g : e e t m a " c e e t " : t x n i i t t a " o " s n p E n : " " i n s : : / t " " d r : d " " t y t / / s P " s a a " o / / p p , i a E i i n p n / / t i t d d " / r t t , d y s s t P / s d n i o a c n c v o t u i l . m g l j e a e s n t c o t i t n " o i l n o d " n " , s , " , Collection Endpoint collections https://texts.alpheios.net/api/dts/collections ...

2024年9月4日 · 44 分 · Nakamura

MyCapytainライブラリを試す

概要 以下のMyCapytainライブラリを試します。 https://github.com/Capitains/MyCapytain 背景 以下の記事で、CTS(Canonical Text Service)を取り上げました。 以下のページにおいて、CITE, CTS, CapiTainSの説明がなされています。 https://brillpublishers.gitlab.io/documentation-cts/DTS_Guidelines.html The following document is about CITE, a system for the identification of texts and any other object. CTS is the name for the identification system itself. CapiTainS is the name for the software suite built around it. Before we go into details, we need to ask two questions: (機械翻訳)以下の文書は、CITE(テキストおよびその他のオブジェクトを識別するためのシステム)に関するものです。CTSは、この識別システム自体の名前です。CapiTainSは、その周りに構築されたソフトウェアスイートの名前です。詳細に入る前に、2つの質問をする必要があります。 さらに、今回使用するMyCapytainライブラリは以下のように説明されています。 MyCapytain is a python library which provides a large set of methods to interact with Text Services API such as the Canonical Text Services, the Distributed Text Services. It also provides a programming interface to exploit local textual resources developed according to the Capitains Guidelines. ...

2024年9月4日 · 22 分 · Nakamura

Canonical Text Serviceを試す

概要 Canonical Text Serviceは、以下のように説明されています。 The Canonical Text Services protocol defines interaction between a client and server providing identification of texts and retrieval of canonically cited passages of texts. (機械翻訳)Canonical Text Services (CTS) プロトコルは、テキストの識別と、正規に引用されたテキストの箇所の取得を提供するクライアントとサーバー間の相互作用を定義しています。 以下のサイトを参考にしています。 http://cts.informatik.uni-leipzig.de/Canonical_Text_Service.html 使用方法 以下を参考にしています。 https://github.com/cite-architecture/cts_spec/blob/master/md/specification.md GetCapabilities サーバーがサポートしているサービスを確認するためのリクエストです。 http://cts.informatik.uni-leipzig.de/pbc/cts/?request=GetCapabilities < G / e < < G t r r / e C e e < r t a q p T / e C p u l e < < < < < < T p a a e y x c c c c c t / e l p b s > t o o o o o e < < < < < < < < < < < < < < < < < < < < < t x y a i t I r r r r r x g e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e / e t > b l > n p p p p p t r d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e d < < < < < < e x I i i G v u u u u u g o i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d i t l s p l c d t n l t e e s s s s s r u t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i t i i o u a o i g v i i t n l s l n d o p i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t i t c u b n n t r e t e C t i o a a e u n o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o l e r l g t i o n i s a o c u n m s p a n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o n e n c i u e o u t e p r e r g e c m > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n > s e c a n n p o s x a y n c u > r u e u T e > a g t > u C e > a g t > u C e > a g t > u B e > a g t > u D e > a g t > u D e > a g t > u D e > a g t > u L e > a g t > u D e > a g t > u T e a g t > u K e > a g t > u P e > a g t > u T e > a g t > u T e > a g t > u T e > a g t > u T e > a g t > u T e > a g t > u С e > a g t > u T e > a g t > u U e > a g t > > r > m b s e a P i r > r h > h t e T r e > h t e T r z > h t e T r e > h t e T r i > h t e T r i > h t e T r i > h t e T r u > h t e T r i > h t e T r h > t e T r i > h t e T r y > h t e T r h > h t e T r h > h t e T r h > h t e T r h > h t e T r h > h t e T r и > h t e T r h > h t e T r k > h t e T y l i t e > g a p n b n e P t i > y n b P t i > y n e P t i > y n i P t i > y n e ´ t i > y n e P t i > y n e P t i > y n t P t i > y n e p t i > y n e P i > y n n P t i > y n h P t i > y n e P t i > y n e P t i > y n e P t i > y n e P t i > y n e P t i > y n н P t i > y n e P t i > y n r P t i > y > n l i > h e r t = i = u t o a p = u u t o c p = c u t o c p = b u t o c p = P t o d p = u t o d p = u t o d p = h u t o d p = u t o d p = u o e p = g u t o e p = ä u t o f p = u t o f p = u t o f p = u t o f p = u t o i p = u t o m p = о u t o r p = u t o t p = a u t o u p s i v P t > a i " b " B b p n r e " a b p n e e " h b p n e e " l b p n y e " B u p n e e " B b p n e e " B b p n e e " e b p n e e " B b p n e e " B b n n e " b p n n e " b p n i e " B b p n r e " B b p n r e " B b p n r e " B b p n t e " N b p n y e " д b p n u e " B b p n g e " i b p n k e = t e u t a l o u l u i l : D b > u n l : D b > u l : D s > u l : D m > u i b : D u > u i l : D u > u i l : D u > u r l : D u > u i l : D u > u i l D g > u J l : D g > u R l : D n > u i l : D a > u i l : D a > u i l : D a > u i l : D a > u e l : D a > u а l : D s > u i l : D l > u n l : D r > " i r b p r l n r e r b i / a < x r o i / a < x r B i / a < x r W i / a < x r b l / a < x r b i / a < x r b i / a < x r i / a < x r b i / a < x r b i a < x r a i / a < x r a i / a < x r b i / a < x r b i / a < x r b i / a < x r b i / a < x r w i / a < x r л i / a < x r b i / a < x r i i / a < x h e s l : b e > n < n l c / t / m n c / t / m n i c / t / m n i c / t / m n e i / t / m n e c / t / m n e c / t / m n 1 c / t / m n e c / t / m n l c t / m n m c / t / m n a c / t / m n l c / t / m n l c / t / m n l c / t / m n l c / t / m n c / t / m n ь c / t / m n l c / t / m n a c / t / m t s i i / , l T : / : e p e l l : A p e l l : b p e l l : l p e l l : l c p e l l : l p e l l : l p e l l : 5 p e l l : l p e l l : e e l l : e p e l l : m p e l l : e p e l l : e p e l l : e p e l l : e p e l l : T p e l l : н p e l l : e p e l l : n p e l l t < o c / c h c g c D a > a < c n D a > a < c l D a > a < c l D a > a < c a > a < c D a > a < c D a > a < c 4 D a > a < c D a > a < c D > a < c s D a > a < c a D a > a < c D a > a < c D a > a < c D a > a < c D a > a < c e D a > a < c ы D a > a < c D a > a < c D a > a < p / n p e B e t r t i o r 1 n / t g o r 1 n / t e o r 1 n / t i o r 1 n / t i D r 1 n / t i o r 1 n / t i o r 1 n / t 5 o r 1 n / t i o r 1 n / t i o 1 n / t o r 1 n / t t o r 1 n / t i o r 1 n / t i o r 1 n / t i o r 1 n / t i o r 1 n / t s o r 1 n / t й o r 1 n / t i o r 1 n / t V o r 2 n / : r = D a b i s o s n m a 8 g c s m a 9 g c s m a 6 g c s a m a 8 g c s n o a 8 g c s n m a 9 g c s n m a 5 g c s m a 5 g c s n m a 9 g c s n m 8 g c s V m a 6 g c s t m a 7 g c s n m a 7 g c s n m a 8 g c s n m a 9 g c s n m a 6 g c s t m a 8 g c s m a 8 g c s n m a 9 g c s e m a 0 g c / e " o r , b B : u : a l 6 u o : B a l 1 u o : K a l 1 u o : m a l 0 u o : m l 7 u o : a l 0 u o : a l 4 u o : ( a l 4 u o : a l 1 u o : a 9 u o : e a l 1 u o : u a l 7 u o : a l 4 u o : a l 8 u o : a l 1 u o : a l 4 u o : a a l 3 u o : п a l 7 u o : a l 0 u o : r a l 0 u o / q 5 m a c l i p p p A i l 5 a n p i i l 7 a n p r i l 3 a n p i l 4 a n p D a l 1 a n p D i l 5 a n p D i l 5 a n p L i l 5 a n p D i l 2 a n p E i 0 a n p r i l 1 a n p . i l 6 a n p F i l 4 a n p F i l 1 a n p F i l 0 a n p I i l 9 a n p m i l 5 a n p е i l 6 a n p T i l 5 a n p s i l 9 a n r u . a l e e b b n b r n e < g t b b n e < g t b a n e < g t b M n e < g t b e i e < g t b e n e < g t b e n e < g t b e n e < g t b e n e < g t b n n < g t b s n e < g t b n e < g t b r n e < g t b r n e < g t b r n e < g t b t n e < g t b e n e < g t b р n e < g t b a n e < g t b i n e < g t e e 0 i l s l c a c a < l / e e c l < l / e e c l < l / e e c o < l / e e c u n l / e e c u < l / e e c u < l / e e c t < l / e e c u < l / e e c g < e e c i < l / e e c V < l / e e c e < l / e e c e < l / e e c e < l / e e c a < l / e e c n < l / e e c е < l / e e c g < l / e e c o < l / e e l s . n e , C e : m : b / t p > n : i / t p > n : i / t p > n : r / t p > n : t < t p > n : t / t p > n : t / t p > n : z / t p > n : t / t p > n : l p > n : o / t p > n : e / t p > n : n / t p > n : n / t p > n : n / t p > n : l / t p > n : t / t p > n : в / t p > n : a / t p > n : n t p > n a t r < l c o b e b i l e u t b a l e u t b c l e u t b g l e u t b s / e u t b s l e u t b s l e u t b t l e u t b s l e u t b i l u t b n l e u t b r l e u t b c l e u t b c l e u t b c l e u t b i l e u t b l e u t b о l e u t b l l e u t b . l e u t x > c t y r c i > i c i x b T i i x b T i k i x b T i a i x b T i c l x b T i c i x b T i c i x b T i e i x b T i c i x b T i s i b T i i x b T i s i x b T i h i x b T i h i x b T i h i x b T i a i x b T i i i x b T i д i x b T i o i x b T i i x b T n . c e m p o b b < c t l y b ( c t l y b a c t l y b n c t l y b h i t l y b h c t l y b h c t l y b c t l y b h c t l y b h c l y b o c t l y b i c t l y b . c t l y b . c t l y b . c t l y b n c t l y b n c t l y b . c t l y b g c t l y b T c t l y g 1 o x , u r l l / e . i p l B e . i p l . e . i p l . e . i p l . c . i p l . e . i p l . e . i p l H e . i p l . e . i p l . e i p l f e . i p l o e . i p l e . i p l e . i p l e . i p l . e . i p l e . i p l e . i p l . e . i p l h e . i p . " r t d s p e e t n i c e e u n i c e e n i c e e n i c e e e i c e e n i c e e n i c e e a n i c e e n i c e e n c e e n i c e e n n i c e e D n i c e e K n i c e e L n i c e e n i c e e M n i c e e T n i c e e < n i c e e e n i c e o > p . e < u " . i s n a > . g s n a > . V s n a > . W s n a > . E n n a > . E s n a > . L s n a > . n s n a > . L s n a > . D s a > . t s n a > . s n a > . a s n a > . i s n a > . o s n a > . G s n a > . y s n a > . h s n a > . / s n a > . s n a > r u i u / s > p t e f t p n e f t p e e f t p i e f t p l s f t p l e f t p u e f t p d e f t p u e f t p a e t p h e f t p o e f t p v e f t p n e f t p u e f t p i e f t p a e f t p e e f t p t e f t p B e f t g s n , c a l > o i a a > o i a r > o i a l > o i a b e o i a b > o i a t > o i a ) > o i a t > o i a r > i a e > o i a f > o i a i > o i a g > o i a i > o i a o > o i a n > o i a > o i a i > o i a i > o i / l f e o c r e / o r / o r s / o r l / o r e > / o r e / o r h / o r . / o r h / o r b o r / o r / o r d / o r / o r s / o r v / o r m / o r S / o r t / o r b / o n i o n r o a > d n a V d n a i d n a i d n a r d n a r d n a e d n a d n a e d n a y n a C d n a 1 d n a d n a J d n a d n a a d n a a d n a y d n a l d n a l d n s c / g p n l a D l e a D l o a D l a a D l f a D l f a D l r a D l T a D l r a D l D l h a D l 7 a D l M a D l a a D l S a D l n a D l r a D l n a D l e a D l e a D / e d , u t l t a l r t a l n t a l m t a l e t a l e t a l t a l h t a l t a l T a l r t a l 7 t a l a t a l m t a l e t a l n t a l < t a l o t a l > t a l t a s n a f s a e a t e s a t e a t e a t e l a t e l a t e V a t e e a t e V a t e r t e i a t e 6 a t e r a t e e a t e g a t e i a t e / a t e d a t e a t e i a t t s t i n i l / e l i / e l o / e l M / e l d / e l d / e l e / e l / e l e / e l a e l s / e l . / e l t / e l s / e l o / e l / e l t / e l a / e l / e l n / e r e a n a n . > . o > . f > . o > . e > . e > . r > . B > . r > . n > . t > . > . i > . > . n > . D > . i > . l > . > . > u > / , m s a r c n r c r c r r d r r d r r d s r d i r d s r e s e i r f T r f n r f V r f d r i i r m t r r r t r u U r c < f e r e e ) e e 1 e y g e e e e e e i e e b e e i e n l n a e i h e r e r e e r e t o e y l e u B e g e k k e t / r > 1 b t b < t s 6 t m a t u V t u 1 t u o t u l t u o t g a g n t n e t a V t a r t a V t a d t a e t s i t l t r r t u c a 1 . r . / r . 1 r . n r . e r . 9 r . n r . e r . n r . t . r . r . e r . s r . e r . a r . > r . b r . r . a r r o , 6 n i b t i k 3 i m i e r i e 0 i l i l i l i d i k B i 1 B i d r i k i i l r i d t i 1 i s l i 1 i 2 n i e r i 9 o e u i e r < e o B e l s e l 5 e u e u i e u e a o i i e 7 i e a s e i o e o s e i i e 8 e y e e 9 e 0 i e / p t r v g t v a / v r i v b i v b . v t o v t n v t o v r n n b v 6 b v v i v n n v u i v o v 3 v n v 0 v 0 a v 1 u a u m e n l e l t e g b e e o e e e h n e h e h n e b . g l e 6 l e i o e g . e i o e d B e 5 e o i e 5 e 9 n e . s , n : d a e d i i d a l d r n d r T d e d e G d e d y < j e d : e d d n d j < d s n d a i d : d d n d : d : . d 0 s m i " : > c t n e f f h r 1 r e r 1 : / a < " m . a / s . t b " a " " < " o y q > v " v k l v 1 v e v e e v 1 5 v 1 r v 1 9 v " t m / v > i v a < v m t v e < v i b v > v l R v > v > / v u a u i > i a e i 8 i i l o i l i 5 4 i 5 m i 9 1 i > i e t i n i r / i e i i g i : i i i : u i i t i x r , e a a : > a 0 n a d n a d B a 4 5 a 4 a a 1 2 a t s i a a t t a s t a t a " a a a " s a a i a m c r " 4 e e i 5 . 5 n 2 . l : t F i i : l n i > > s t l e u t C C > C : W C r 1 C r b C : C l < C : C e " l C i C n t C " e C d t C V C C i C C l C n > s r a a a " e a 1 8 a 1 l a " T a e / a " T a > > e a n a : l a > > a : l a e a a a a a e a s , a n n n > l n 8 7 n 9 e n > h n t t n > h n > n n n " e n n " e n r n n n n n > n : t n o o o s o 7 1 o 0 o e o z i o e o o i o > > o o > > o s o o . o o o a g s n n n h n 1 . n 5 i n n t t n n n s n n n n i n n < n n n = l l i i i . i : i : n i B i e l i B i i h i i i i o i i / i i i " , a c c c < c " T c " c i c h e c i c c < c c c c n c c t c c c h u t a a a / a > h a > G a b a a > a b a a / a a a a . a a i a a a t k i l l l t l e l e l l l n l l l l t l l l l < l l t l l l t r o i r e d e i / l p < n T T T t T B T m T T : T T T t T T T T t T T e T T T : / s e e e l e i e a e i e " e i e e l e e e e i e e > e e e / c , x x x e x b x n x n x > x n x x e x x x x t x x x x x / o t t t > t l t < t t t t t > t t t t l t t t t t r r w e / G G e e p h S S S S S t S e S S e S S S S S S > S S S S S l u i e e e e i e i e r e e r e e e e e e e e e e e a s c r r r r n r t r m r r m r r r r r r r r r r r x l h v v v v v l v a v v a v v v v v v v v v v v n a i i i i G i e i n i i n i i i i i i i i i i i g n h c c c c e c > c . c c . c c c c c c c c c c c . g a e e e e r e e e e e e e e e e e e e e e o u v m L L r a e h h h h a h h u h h u h h h h h h h h h h h g g t t t t n t t t t t t t t t t t t t t t t t / e b t t t t , t t h t t h t t t t t t t t t t t n > e p p p p p p e p p e p p p p p p p p p p p s e : : : : E : : r : : r : : : : : : : : : : : / n / / / / l / / / / / / / / / / / / / / / c / / / / b / / v / / v / / / / / / / / / / / o a c c c c e c c e c c e c c c c c c c c c c c m s t t t t r t t r t t r t t t t t t t t t t t p s s s s s f s s s s s s s s s s s s s s s s s a i . . . . e . . i . . i . . . . . . . . . . . t g i i i i l i i o i i o i i i i i i i i i i i i n n n n n d n n n n n n n n n n n n n n n n n b e f f f f e f f f f f f f f f f f f f f f i d o o o o r o o o o o o o o o o o o o o o o o l r r r r r r f r r f r r r r r r r r r r r i 9 m m m m V m m m m m m m m m m m m m m m t 0 a a a a e a a 1 a a 1 a a a a a a a a a a a y 6 t t t t r t t 5 t t 9 t t t t t t t t t t t / i i i i s i i 4 i i 1 i i i i i i i i i i i a d k k k k i k k 5 k k 2 k k k k k k k k k k k n i . . . . o . . . . . . . . . . . . . . . . . n f u u u u n u u < u u < u u u u u u u u u u u o f n n n n n n / n n / n n n n n n n n n n n t e i i i i o i i t i i t i i i i i i i i i i i a r - - - - f - - i - - i - - - - - - - - - - - t e l l l l l l t l l t l l l l l l l l l l l i n e e e e 1 e e l e e l e e e e e e e e e e e o t i i i i 8 i i e i i e i i i i i i i i i i i n p p p p 7 p p > p p > p p p p p p p p p p p s I z z z z 1 z z z z z z z z z z z z z z z / S i i i i < i i i i i i i i i i i i i i i 1 O g g g g / g g g g g g g g g g g g g g g . - . . . . t . . . . . . . . . . . . . . . 0 6 d d d d i d d d d d d d d d d d d d d d " 3 e e e e t e e e e e e e e e e e e e e e 9 / / / / l / / / / / / / / / / / / / / / x - p p p p e p p p p p p p p p p p p p p p m 3 b b b b > b b b b b b b b b b b b b b b l c c c c c c c c c c c c c c c c c c c n c / / / / / / / / / / / / / / / / / / / s o c c c c c c c c c c c c c c c c c c c : d t t t t t t t t t t t t t t t t t t t t e s s s s s s s s s s s s s s s s s s s e s / / / / / / / / / / / / / / / / / / / i . < < < < < < < < < < < < < < < < < < < = / / / / / / / / / / / / / / / / / / / " T s s s s s s s s s s s s s s s s s s s h h o o o o o o o o o o o o o o o o o o o t i u u u u u u u u u u u u u u u u u u u t s r r r r r r r r r r r r r r r r r r r p c c c c c c c c c c c c c c c c c c c : C e e e e e e e e e e e e e e e e e e e / T > > > > > > > > > > > > > > > > > > > / S w w i w n . s t t e a i n - c c e . o c r o g n / t n a s i / n 1 s . 0 2 " 0 x b m i l b n l s e : d t c r = a " n h s t l t a p t : i / o / n p s u r f l r . o o m r g P / B d C c / t e h l a e t m e a n r t e s / a 1 v . a 1 i / l " a b x l m e l n a s s : t P i u = b " l h i t c t p D : o / m / a c i h n s . . < h / a c r o v r a p r u d s . d e e d s u c / r x i m p l t n i s o / n c > t s " > GetPassage 指定したURN(Uniform Resource Name)に基づいて、特定のテキストの一部を取得します。 ...

2024年9月4日 · 109 分 · Nakamura

LEAF Writer: Miradorを追加する

概要 LEAF Writerのカスタマイズ方法に関する調査記録です。 https://gitlab.com/calincs/cwrc/leaf-writer/leaf-writer 今回は以下のように、Miradorを追加します。 方法 以下を参考にしてください。 https://gitlab.com/nakamura196/leaf-writer/-/commit/377438739cdeb0a7b770ee9d4b9fea86081179d8 修正が必要なファイルは以下です。 i i i i i } c } e m m m m n l x p p p p t a p t w a r r r r m $ c i c } p } r } p o o o @ o e t a a r s e e e e i p u g o r e o r r r t r r t r g i s a a a a r a r n n t t t t $ ` t t } t } i c c c } t s t t r t t t s t f r e ? t d d d d e a g r o s h h h h ( ) h h ) h ) o o o ; h e h h t - a i n : e I o o o o s d e e r t i i i i ` < ; i i c i t ; i i ; a n n n i w ] w } i t i i $ ' W i M c b t r i n n n n l o B n e r s s s s # d s s o f h s f t ( s s s d i , i , e s ( s s d j r g i e u I s : i l l l l i r r t S u . . . . $ i . . n i . e d t t t : n { } n s s . ) . . e f q i n r t d t f y y y y n I e I c c w i t a { v w w s ( s w ( o d , d i l m $ c f r u t o a I e : r W V t n a n r t r d a t p r r o ! . r ! p c $ m c t o l o d i i { p u a o e e r d i ? i r i w i t a - s k d o o i g t a i i i l s p i t r ) f a o h w o w e n r a r u m r r e o i : s n i e r d a t d t s e l r t = N r r d t t e u r t h o . a n n i s a : B t a g r l y r f t g t w i : g t i a : x l ( e a N e = e e . c o e i c f c i f s : d a - d e e t ' - f V s r ; e e t N r s n { r ` m a n " r r l c c r s e i s f i . e { r d o B n j u r f i t i r r e s a N a c u = = $ e m t $ . . o e e . . s n i e g i [ d O i r r t I q i o r e r n ; r t m a b e n a = { e I { e e g s s e w s d m s d M p s I e I i u ' m o w i g { : r e m l : k - f t p = d t v v ( s s v r D i t = , a e a n a n i e ; m e n ; i : e e n 1 a t w a = } h e e ' ) D e i o l U n n b s k d f r r g W n : - a o ; l r r r t ` i n n d o n t c e r { i : l t s e V y ' P ; r g s n n w s i i e a a ) s t t o r c t e u i f e a x i ' m r i ; t s e y n e b t n g t . . ( ( c e u ( r m = e f - n = e ; i o t r t x ; ; u e t t a i ' ' u t m ' . e = s a n c = w r p e i r t | t r I ? r p d l d m u e w e n $ t l e e n e a s r n i - e ; d ? i p } o o e r n r d t ( $ : s x u - r d ; g n l n , } b e " a c n n t i i ( d f e t = l 1 ; o { ; g i u _ ' u n d u t ; ( t t d o a m , - l ; r ; n l p i p t d s i m L b e o o c c a l M ; / ' e l a i b e ( t n e o o r r c ) s n i i W ; ; r i ' ` y g n a d I ) : . i i n r r @ e f ; ? l D t d y n f m f e a i t n V ? e o L e ) i r H i i e d t y t i = c o d ; t e T n l s @ o e p I e ' " u a ' i t M d e t t r r e d w f p m d , a u L ( . U y . ' s , e p a o e e l r E ` a r p v ; c r a c s n d s i n l * t i e i r t ` g s i t ' u z ; e [ t , s e i a ; e ' t ' ) c e m _ r c w p g ; i ) . c d e t ( r e t , b o . s e ' n a ' i r - r n s u s ) t g s p ( e w e : u b s . ) = a t c s r a b s , s " m - o l i k a a s c u { f e e n i t t b c r b b a a s f n e e t s r i o s c s l i t r l r o i b d c s ' i g / e i l b e y r i ) n ) n } m b u e ( ) i m ; t ; o : e u t ( ( ; b i / - n t e ( s e l n e I t e ; ) u ( e o x i c ( " - p i n t t = c ) ] u l f a h o > e ` n i V m a p s = ) s c i e t : t s > ; a i e h : f t w s 0 i { e - e t ; s b - a r o . o a n P r b r o s y r e o e l s , o s t s e i p t e a g @ s t o t n n t ) h m ( , m y e : ) e p { ) b n e i 0 ; o t s m ; d , c a y r g l : @ i e e t p f H y t U t T p - R : M e e L L s s 0 E c l ; l r i e i n r m p t i e t / g n - n h t e o t ) s - : l r = i e 0 > n d " t u > { / n < n d / o a d - n i u t v n - > s t a y f p e e - - c c a o l n l s , t i @ t t u y e p n e t s s c r i p t - e s l i n t / n o - u n s a f e - m e m b e r - a c c e s s 以下の箇所で、<facsimile sameAs="https://dl.ndl.go.jp/api/iiif/3437686/manifest.json">の情報を取得しています。 ...

2024年7月23日 · 9 分 · Nakamura

LEAF Writer: サンプルデータの追加方法

概要 LEAF Writerのカスタマイズ方法に関する調査記録です。 https://gitlab.com/calincs/cwrc/leaf-writer/leaf-writer 今回はサンプルデータの追加方法に関する備忘録です。以下のように、独自のサンプルデータを追加します。 方法 以下を参考にしてください。 https://gitlab.com/nakamura196/leaf-writer/-/commit/c4e98090c94874037980819c9672eea10814eedb samples.jsonの更新に加えて、必須ではありませんが、アイコンを追加するため、apps/commons/src/icons/index.tsxも更新する必要がありました。 結果 以下のように、サンプルデータからエディタ環境を開くことができました。 まとめ LEAF Writerの理解にあたり、参考になりましたら幸いです。

2024年6月29日 · 1 分 · Nakamura

LEAF Writer: Image Viewerの使い方

概要 LEAF Writerでは、以下のように、テキストと画像を並列表示する機能を提供します。画像のページをおくると、テキストも連動して動作する機能も提供されています。 このImage Viewer部分に画像を表示するための、TEI/XMLの記述例を紹介します。 方法 以下のように、pbタグを指定します。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/blob/master/xml/lw/01.xml 具体的には、以下です。 < p b c o r r e s p = " # z o n e _ 0 0 0 5 " f a c s = " h t t p s : / / d l . n d l . g o . j p / a p i / i i i f / 3 4 3 7 6 8 6 / R 0 0 0 0 0 2 2 / 0 , 0 , 3 4 4 5 , 4 7 0 6 / f u l l / 0 / d e f a u l t . j p g " n = " 5 " / > pb要素のfacs属性に指定された画像が、Image Viewer部分に表示されるようでした。 ...

2024年6月29日 · 1 分 · Nakamura

LEAF Writer:CSSのカスタマイズ

概要 LEAF Writerのカスタマイズ方法に関する調査記録です。 https://gitlab.com/calincs/cwrc/leaf-writer/leaf-writer 今回はCSSによる見た目のカスタマイズ方法に関する備忘録です。これにより、以下のように、縦書き表示にする編集環境の用意などが可能になります。 以下は、カスタマイズ前の表示です。 方法 以下のように、スキーマファイルを指定します。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/blob/master/xml/lw/01.xml 具体的には、以下です。 < ? x m l - s t y l e s h e e t t y p e = " t e x t / c s s " h r e f = " h t t p s : / / k o u i g e n j i m o n o g a t a r i . g i t h u b . i o / l w / t e i _ g e n j i . c s s " ? > LEAF Writerはこのスキーマファイルを読み込み、エディタ部分のスタイルを変更するようでした。 ...

2024年6月29日 · 1 分 · Nakamura

LEAF Writer:スキーマのカスタマイズ

概要 LEAF Writerのカスタマイズ方法に関する調査記録です。 https://gitlab.com/calincs/cwrc/leaf-writer/leaf-writer 今回はスキーマのカスタマイズ方法に関する備忘録です。以下のように、日本語訳などを表示することを目指します。 以下は、カスタマイズ前の表示です。以下のスキーマに基づき、多くの要素が英語の説明とともに表示されます。 https://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng 方法 以下のように、スキーマファイルを指定します。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/blob/master/xml/lw/01.xml 具体的には、以下です。 < ? x m l - m o d e l h r e f = " h t t p s : / / k o u i g e n j i m o n o g a t a r i . g i t h u b . i o / l w / t e i _ g e n j i . r n g " t y p e = " a p p l i c a t i o n / x m l " s c h e m a t y p e n s = " h t t p : / / r e l a x n g . o r g / n s / s t r u c t u r e / 1 . 0 " ? > LEAF Writerはこのスキーマファイルを読み込み、validationや使用可能な要素の提示を行うようでした。 ...

2024年6月29日 · 2 分 · Nakamura

校異源氏物語・本文テキストデータリポジトリで公開しているTEI/XMLを一部更新しました。

概要 以下のリポジトリで校異源氏物語のTEI/XMLファイルを公開しています。 https://github.com/kouigenjimonogatari ここで公開しているTEI/XMLに対して、一部変更を加えましたので、備忘録です。 フォルダ構成 修正前のファイルは以下に格納しています。これまでから変更はありません。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/tree/master/tei 更新したファイルは以下に格納しました。 https://github.com/kouigenjimonogatari/kouigenjimonogatari.github.io/tree/master/xml/lw 後述する修正を加えたXMLファイルが格納されています。 修正内容 スキーマの追加 以下のrngファイルを追加しました。 < ? x m l - m o d e l h r e f = " h t t p s : / / k o u i g e n j i m o n o g a t a r i . g i t h u b . i o / l w / t e i _ g e n j i . r n g " t y p e = " a p p l i c a t i o n / x m l " s c h e m a t y p e n s = " h t t p : / / r e l a x n g . o r g / n s / s t r u c t u r e / 1 . 0 " ? > このrngファイルは、使用するタグを限定し、かつ日本語訳を追加したものです。Romaで作成しており、rngファイルへの変換前のoddファイルもリポジトリに格納しています。 ...

2024年6月28日 · 6 分 · Nakamura