素晴らしいスクリプトですね。Windows7+InDesign5.0で動作しました。
上の方のGSのバージョンの書き換えと、181行目のデバイスの指定が 9.14以降はepswriteからeps2writeに代わっていますので、書き換えて使用しております。
IdMathのサポートがCS6で終わってしまって、CC以上でてふをつかうとなると、本スクリプトに期待大です。
ただ30行目でundefinedはオブジェクトではないというエラーが出て止まります。tex,GSは正常に動いています。Indesign5を利用しています。対処法ありましたらお願いします。
mc2lvsさん
ひょっとしてExtendScript Toolkitで、ターゲットをInDesignに変更せずに実行してませんか?
すばやい対応をありがとうございました。あまりにCS5がWindows 8 64bit下で落ちるので期待もこめてタイマイはたき、CCにしてみました。今度は203行目でライブラリが読み込めないとのエラー番号104705のエラーが出ます。64ビットのVBが怪しいかと思い197行目のWScriptをCScriptに変え、SysWON64にパスを通しても同じエラーがでます。本当に申し訳けありません、解決法がありましたら教えてください。
解決方法はWEBをよく見ればありました。CCもまさかともいましたがレジストリを見るとVer10.1のところがVer10.0になっていました。ひどい!Adobe!
これを修正しましたが、やはりepsがなぜかできません。のメッセージが出て進まず。。
ターゲットはIndesignにしてます。あーどなたかHelp!
何度もすみません。
指定のepsフォルダには複数のファイルはきちんと吐き出されていたので。ステップでスクリプトを追うことで
ファイル名のとなりにある空白が原因とわかり修正したら、見事数式に変換されました!ありがとうございます!ただ、数式をもとのTexに戻す方がうまくいきません、少々疲れたので明日、試行錯誤します。
mc2lvさん
お疲れ様です。。。
説明も動作確認もエラー処理もかなりいい加減なスクリプトなもので
ホントご苦労おかけしますね。
エラー内容など報告していただけたらできるだけ対応します。
あと要望とか改善案とかもあればぜひ言ってくださいませませ。
それにしてもCCでも直ってないんですねVBのバグ。直ってないというより新たなアホをやってる?
CCなんて何も期待できませんよCS5に戻しましょう。CS5用のPCを1から整えてもCC数か月分ですよーとか適当なことを言ってみる。
ほんとうにできたらCS5を使いたい。ところがハードをwindows8 64にしてしまったので、頻繁にCS5は落ちるようになってしまいました。サポートに電話するとCS5はWIN8で動作保障しないとのこと。今回もCCからCS6への変換はむずかしい。。。電話代の無駄でした。。
さて、なんとか動くようになりました。さっそく要望ですが、できたらでけっこうです。インライン数式を多用しています。ただ、分数式の分数乗を持つ関数を書くとどうしても指数部分の上が欠けます。もう少し、幅をとってくれるとよいかと、こちら側でなんとかなる期もしますので、セルフTRYもしてみます。もう一つ、文字を赤にしたかったり、字体を選びたいのです。できるようにしていただけると幸いです。時間がありましたらよろしくお願いします。
・上が欠ける件について
22行目あたりの
var YohakuInline=[0,-2,-0.5,-2];//インライン数式の[上,左,下,右]の余白
の一つ目の数字(0のとこ)に適当な数を入れて下さい
たとえば5にしたら5ptほど上に広がります。
なお、YohakuInlineで上下の余白が0のときのインライン数式の縦幅は、その段落の行送りと同じです。
これをさらに縦に伸ばすわけですから、自動行送りの場合はその行だけ行間が変わることになり、固定行送りの場合は上の行に被ってしまう可能性があります。お気をつけて。
・色について
colorパッケージを読み込んでるのでTeXの機能で色付けできます。
たとえば$x$を赤くしようと思ったら、
$\color{red}x$
でいけると思います。具体的にCMYK値を設定する場合は
$\color[cmyk]{0.0,1.0,1.0,0.0}x$
$xyz$のyだけ赤にするならこう。
$x\textcolor{red}{y}z$
字体もある程度TeXの機能で選べると思いますがよく知りません。
返信ありがとうございました。
色々調整していきたいと思います。
スクリプトを公開していただけてるので助かります。
また、使い込んで報告したいと思います。
長い式やなんかは外部のlyxやwinshellとリンクできるとコードエラーを返してくれるのでいいかなぁと思っていますがインライン数式がEPSとTEXTで相互に変えられるのでとても便利です。
お久しぶりです待ち望んでいたVerUPをありがとうございます。ただCCでは[epsがなぜかできません]のエラーが出ます。スクリプトでデバッグしようとしてもCS5のものが動作中…起動できないのエラーが出てしまいます。旧バージョンは使えています。
バージョンアップありがとうごいました!!
ただ、CCでは「なぜかepsファイルができません」
が出てしまします。スクリプト編集からデバックができないので詳しく報告できませんが、とりあえず、報告です。旧バージョンは使えます。
mc2lvさんお久しぶりです。ご報告ありがとうございます。
前のバージョンではTeXとGhostscriptの実行ファイルのフルパスを長々と書いてたんですが、
ver1.3では、いわゆる「PATHを通す」作業ができているだろうという前提で、platex、dvipdfmx、gswin32cっていうコマンドだけにしてます。
それが原因の可能性が高いと思います。
まずは生成ファイルの保存フォルダ(デフォルトではinddファイル保存フォルダ内の『tex』フォルダ)を覗いて、どこまで出来てるか確認してみて下さい。
うまくいけば.tex→.dvi→.pdf→.epsの順に生成されるのですが、どこかで止まってると思います。
もし.texしかなかったらおそらく上記が原因なので、
PATHを通すか、あるいは9~11行目の
var TexExe=…
var DvipdfExe=…
var GsExe=…
を前の動いてるバージョンの奴からコピペして書き換えてみて下さい
もしpdfまで出来ててepsが出来てないようなら
12行目
var GsDevice="eps2write";
を
var GsDevice="epswrite";
に変えるのを試してみて下さい。
さっそくのRESをありがとうございます。ご指摘の通り、パスを通すと無事動作しました。旧バージョンで作成したものもフレームの種類を合わせると無事もどることもできました。ありがとうごいました。
ただ、起動すると設定メニューになるので、ここでいろいろな設定を保存できて、EPS化と、戻す、メニューは今までのようにスクリプトパネルからワンクリックでできると効率がいいです。また使い込んでいきたいと思います。
いつもお世話になっております。ver1.3も問題なく使えております。
位置やサイズの微調整はオブジェクトスタイルでしていますので、今回のバージョンアップはありがたいです。
IndesignでTeXが使えるすばらしいスクリプトですね!!
公開に感謝です!
早速、実行してみたのですが、次のような構文エラーが出てしまいました。
「エラー
行6: #targetengine "intextex"
構文エラー」
Windous7(32bit)+Indesign CC
です。TeXは,platexを使っていて,通常の文書などを作成するときは正常に稼動しています。
対処法がありましたらよろしくお願いいたします。
ちょっと原因の想像がつかないですね…
一応ai化機能以外はtargetengineの指定がなくても動くはずなので
6行目を削除して試してみてもらえますか?
試してみましたが,上手くいきませんでしたので,こちらの環境を探っていろいろ試してみます。
>>EPSファイルの生成で躓いております。
>ちょっと修正してみました。
>試してみてもらえますか?
現在、私のWindowsが起動できない状態なので試すことができません。
EPSが生成できなかったのもWindowsそのものが不安定だった可能性が高いので参考にならないと思います…
申し訳ありません。
素晴らしいスクリプトを作っていただき感謝しています。
ちょっと修正してみました。
試してみてもらえますか?https://blog.cnobi.jp/v1/blog/user/c2165b95a8b473f47f31eef23be16d4f/1432399177
ーーーーーーーーーーーーーーーーーーーー
>EPSが生成できなかったのもWindowsそのものが不安定だった可能性が高いので参考にならないと思います…
いえいえ、ウチの環境でもGhostscriptの最新版を入れてみたら挙動がおかしかったので修正してみたのです。
(ファイル名に2バイト文字を使わないようにしただけですが)
ご報告いただけてありがたいです。
お久しぶりです!安易に2015CC版にアップしたら
内部バージョンの相違のせいか、動作しなくなって
しまいました。対応策がありましたら教えてください。
むむ…
こちらはCC2015は入れてないので何とも言えませぬ。
エラーメッセージとか何かヒントになりそうなことを書いていただければ何か分かるかもしれませんが
2015ccでIndesignの設定リセット後に使えるようになりました。ただ、テキストボックスにTeXを書いて、処理後に戻すとなぜか、縦書きになっています。
>テキストボックスにTeXを書いて、処理後に戻すとなぜか、縦書きになっています。
グラフィックフレームをテキストフレームに変換したときの各種設定って、そういえばどこから引き継がれるのかよく分からないので、それはCC2015でなくても起こりうることかもしれませんね。
とりあえずフレーム数式をテキストに戻す場合は常に横組みになるようにしときましょうか。
2015CCでメモリを大量に消費するせいか、64BIT8GBの環境でもインてふ使用中にテキストボックス内の文字が消えるという現象が頻発します。みなさんはどうでしょうか、画像表示をあらくしてもどうも、時々発生し、編集がとてもつらくなりました。2014CCでは画像を詳細に表示してもおこらなかった現象です。
画面の書き換えのタイミング、メモリの管理で対応できるようでしたご検討してみてくださいませ。
何とか動いています。
一発変換とはいかないのですが
かなり助かっています。
作者さんには本当に感謝です。
役立つスクリプトを作って下さり本当に敬服いたします。
今回,お尋ねしたいのですが,preambleを設定することはできますか。
emathやceoフォントなどを使えるとうれしいです。
emathもceoフォントもよく知らないのですが
プリアンブル(\begin{document}の前まで)を外部テキストファイルから読み込むようにしたものを作ってみました。どうでしょうか
https://blog.cnobi.jp/v1/blog/user/c2165b95a8b473f47f31eef23be16d4f/1459175185
迅速に対応してくださり感謝致します。
試してみましたところ,中間ファイル.texに反映されませんでした。
スクリプトを開いて,pathを設定する必要がありますか。
よろしくお願いいたします。
むむむ…設定無しでjsxファイルと同階層にあるpreamble.txtを読むようにしたつもりなのですが、なんでだろう。
お使いのOSとInDesignのバージョンは何ですか?
本当に恐縮です。返答下さってありがとうございます。
os:windows7
indesignバージョン:cs6
tex:win32tex
例えばですが,自分で書いた\usepackage{txfonts}を入れてみますと,正常にフォントが変わって動作します。
しかし,作成してくださった,プリアンブルに
\usepackage{txfonts}を入れて,中間ファイルの.texを見てみますと,
\usepackage{txfonts}の部分が書かれていませんでした。
すみませんがよろしくお願いいたしまう;;
ちょっと書き換えたので試してみてください
もし、「preamble.txtが見つかりません」もしくは「開けません」というアラートが出たら、どっちが出たかお知らせください
https://blog.cnobi.jp/v1/blog/user/c2165b95a8b473f47f31eef23be16d4f/1459262501
本当に申し訳ありません。自分で打った文が何度もあってびっくりしました。
主様が投稿した下さってると思いリロードをして見てました。m(_ _)m
結果ですが,アラートが出ました。
「preamble.txtが見つかりませんとでました。」
ありがとうございます。
原因わかったかもしれません
InDesignのスクリプトパネルからではなく、jsxファイルのダブルクリックで実行してるのではないですか?
そうした時にjsxファイルのファイルパスがうまく取得できないことが分かりました。
ということでjsxファイルのあるフォルダではなく、編集中のinddファイルの保存場所からpreamble.txtを読み込むようにしました。
ドキュメントごとに違うプリアンブルを使いたい場合もあるでしょうから、最初からそうしとけばよかったですね。
https://blog.cnobi.jp/v1/blog/user/c2165b95a8b473f47f31eef23be16d4f/1459303180
ありがとうございます!!!いけました!!
感謝感激雨あられですm(_ _)m
問題なく表示されました。これで仕事がはかどります;;
本当にありがとうございました。
すみません。もう一つご質問したいと思います。
分数を表示するとき,分母の数字が見えなくなります。
この対処法はありますでしょうか。
よかったです。
おかげ様でこちらもファイルパス取得の思わぬ落とし穴に気づけました。
分母が見えなくって、フレームからはみ出すという意味ですか?
お恥ずかしい質問してしまいました。
自己解決です。
この度,主様ほんとうにありがとうございました。
m(_ _)m
PCを新しくするとVisual Basic.tlbのエラーで使えない状況になってます。これは多分レジストリの表記が違うためで、インストールした新しいIndesignのVisual Basic.tlbの参照先を正しく書き直せばいいと思うのですが、今のところエラーが出て消えません。
お久しぶりです。大量にEPSの数式をつくって、さらに普通に文字を書いて編集しているとテキストフレームの文字全てが消える現象が新しいCCで出るようになりました。はじめはメモリの問題かとPCを新しくしましたが、だめです。テキストフレームの再描画みたいなコマンドをつけてくれると助かります。
Win10もCCもこちらに環境がないためなんともできませぬ…
申し訳ない
TEXのものをInDesignへ変換させようとしている者なんですが、皆が書いている問題とは違う問題が出てきて困っています。環境はwin10(or Win8.1), CS6で試してみたのですが、intextex1_3をExtendscript toolkit CS6からindesign指定で実行するとExecution finished.Result:undefinedというエラーがconsoleに出て何もファウルを吐き出せてない状況です。またindesign内部からintextex1_3をダブルクリックで実行してみたのですが、なんの変更もなしです。助けて下さい。
CC2019版InDesignにて動作確認が取れました。
非常に助かっています。ありがとうございます。
なお、gsは64ビット版を使っているため
32ではなく64と書き換えています。
更に動作確認が取れたことについて追加報告です。
emathをプリアンブルに追加し、Perl連携によってグラフなどを描写することもできました。
Windows10/7のCC2014/2015で動かそうとしていますが、どちらも
「エラー番号:-2147024893
エラー文字列:doScript」
というダイアログを出して410行目で実行を止めてしまいます。
解決策が分からず、お知恵をお借りできればと思います。
バージョンを間違えてしまいました。
現時点で最新の「2019/2020」です。
失礼しました。
うーん、ちょっと原因は分かりませんが、スクリプトの実行はInDesignのスクリプトパネルから行っていますか?
もし違う方法でしたらスクリプトパネルからの実行を試してみてください。
コメントありがとうございます。
スクリプト実行はInDesignのパレットから行っています。
ダイアログの中はこうです。
エラー番号:-2147024893
エラー文字列:doScript
(1行空き)
変換方式:intextex
ファイル:C:¥Program Files¥Adobe¥Adobe InDesign CC 2019¥Scripts¥Scripts Panel¥インてふてふ1_31p3.jsx
行:410
ソース: app.doScript(VBS,ScriptLanguage.VISUAL.BASIC);
------
もしかして私のWindowsでVBScriptが実行できなくなっている環境なのかと素人考えしていますがいかがでしょうか?
実はMacのParallels Desktopという仮想化環境で動かした場合にうまくいかないようです。
同じ仮想化環境でもOracleのVirtualBoxでは相談したエラーはなくなりました。もちろんWindowsの実機でも動作しています。
ただ、EPSへの書き出しがうまくいかないなど複数の課題がありまして、順次取り組んでいこうかと思います。
お手数をおかけしました。
長らく愛用させていただいています。
CC2023でも使えることが確認しています。
新しいパッケージを追加したいのですが、
jsxのここだろうなと思う部分に、
\usepackage{〇〇}
を入れても、適用されずむしろInDesign上に文字として出てきてしまいます。
具体的にどうすればいいのかご教授いただけると幸いです。
プロフィール
最近の記事