KDP(電子出版)のメモ 急急如律令

Amazon Kindleダイレクト・パブリッシングでの電子出版や電子書籍の作成販売について、文章やイラストの作成や編集方法について書いています。

Java

Google Playに公開しているAABの更新方法

あなた: Google Playに公開しているAABの更新方法 ChatGPT: Google Play に公開している AAB(Android App Bundle)の更新手順は以下の通りです。 更新したいアプリの AAB ファイル(app-release.aab など)がすでにビルド済み。 Google Play Console アカウ…

アンドロイドアプリで横長画面(ランドスケープ)で表示が崩れる

あなた: androidスマホで横長の画面だと表示が崩れる

アンドロイドアプリのデザインをchatgptに考えてもらう

あなた: 次のような機能があるandroidアプリのuiについてアイデアを出して。できれば使いやすくして。 挿絵を読み込む 本文ファイルを読み込む 表紙画像を読み込む 設定を開く キャンセルボタン textviewでログを表示 ChatGPT: 以下は、挙げていただいた機能…

コードのエラー処理など

あなた: 下記のコードの重複を減らしたい /** Intent から URL を取得して処理 */ private void handleIntent(Intent intent) { if (intent == null) return; String receivedUrl = null; // 共有 (SEND) インテントからの取得 if (Intent.ACTION_SEND.equal…

android javaでRSSから取得したタイトルとURLをtextviewに表示したい

あなた: android javaでRSSから取得したタイトルとURLをtextviewに表示したい ChatGPT: Android JavaでRSSから取得したタイトルとURLをTextViewに表示するには、以下のようなステップを踏む必要があります: RSSフィードを取得(HttpURLConnectionなど) XML…

AndroidのOSSライブラリ表示

アンドロイドアプリでライブラリを使っているとライセンス表記をする必要がある。githubのリポジトリへのリンクに貼れば良いのかな。 qiita.com zenn.dev あなた: androidにoss-licenses-pluginを追加する手順 ChatGPT: Android プロジェクトに oss-licenses…

AozoraEpub3 for Android アンドロイドアプリの公開

PC版はあるけど、android板があれば出先でも変換ができるのではと思って作った。PC版の設定は大体移植ができたと思うがバグチェックは必要。kindlegenのandroid版がないのでキンドルで読むにはsend to kindleを使うしかない。 Android特有の使い方は、URLは…

Androidアプリのフィーチャー グラフィックを提案

ChatGPTの画像生成はなんか、文章が読めないものになってしまう。なので一旦消してから、適当に入れ替えた。左に偏っていた文字を中央に移して、半分に切れていた文字を修正した。フィーチャー グラフィックはサイズが決まっていたのでサイズ幅を修正した。…

ChatGPTにアイコンを提案させてみる。

ChatGPTにアイコンを提案させてみる。 "ePub" を模したロゴ(オリジナル風)がよくわからないロゴだったので色なじませツールで消した。 青空epub 真ん中に白抜きで本のようなロゴを入れる。 本のロゴ なんか本だけリアルすぎるので単純化 フラットデザイン…

ListPreferenceから選択後に編集可能にしたい

あなた: listから選択後に編集可能にしたい <ListPreference android:key="UserAgent" android:title="ユーザーエージェント" android:summary="ユーザーエージェントを設定します" android:entries="@array/ua_entries" android:entryValues="@array/ua_values" android:defaultValue="" /> ChatGPT: ListPreference で リストから選択後にカスタム入力を許可(編集可能)にするには、標準の ListPreferen…</listpreference>

preferenceのキー値を変更したので読み取り直す。

あなた: android向けに書き換えて、JavaでSharedPreferences prefsから取得するとする。 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"> <PreferenceCategory app:title="表題"> </preferencecategory></preferencescreen>

activity.xmlからstring.xmlに切り分けの自動化

activity.xmlからstring.xmlに切り分けるのが意外と手間だったので指示するだけでいいのは楽。 あなた: 次のactivity.xmlからstring.xmlに切り分けて ChatGPT: こちらが activity.xml から文字列リソースを strings.xml に切り出した例です。 <resources> <string name="cover_button_text">表紙画像を読</string></resources>…

preferenceが落ちる原因の特定

何故か、preferenceを追加するとアプリがクラッシュした。booleanにstringを入れようとしたと見るが、よくわからなかった。最終的にはkey値が同じものを複数指定していたのが原因だった。 あなた: java.lang.ClassCastException: java.lang.String cannot be…

AsyncTaskをHandlerを使って書き換えて

AsyncTaskを使うと非推奨と出るので他の方法を模索した、HandlerかExecutorServiceのどちらかもしくは両方を使ったものが提案された。 あなた: androidでSwingWorkerのようなものはあるのか ChatGPT: はい、Androidには SwingWorker のような「バックグラウ…

android向けに書き換えて 複数ファイルを変換 convertFiles

あなた: android向けに書き換えて /** 複数ファイルを変換 * @param dstPath srcFileがキャッシュで入力ファイルを同じ場所に出力先指定をする場合 */ private void convertFiles(File[] srcFiles, File dstPath) throws Exception { if (srcFiles.length ==…

Androidで大きすぎる画像は縮小して出力

このコードは、画像の縮小や余白除去、回転、コントラスト調整を行い、ZIPに保存する処理を含んでいます。AndroidではBufferedImageやGraphics2D、AffineTransformが使用できないため、以下のように書き換えます。 Android用に書き換えたコード 変更点 Buffe…

preferenceから設定値を取得する方法

設定値の取得コードを手動で書くのが面倒だった。メイン画面でどんな処理をさせるかを決めかねている。 あなた: 次のpreferenceから設定値を取得する方法 <PreferenceCategory app:title="表題"> <ListPreference app:key="title_type" app:title="表題の種類" app:entries="@array/title_type_names" app:entryValues="@array/title_type_values" android:defaultValue="0" /> </listpreference></preferencecategory>

下記のコードをAndroidのpreferenceに書き換えて 表紙と画像部分

設定をカテゴリーごとに分割 developer.android.com あなた: 下記のコードをAndroidのpreferenceに書き換えて //////////////////////////////////////////////////////////////// //Tab 変換 ////////////////////////////////////////////////////////////…

ImageInfoReader.javaとImageUtils.javaの書き換え

あなた: 次のコードAndroid向けに書き換えて /* 指定した順番の画像情報を取得 * @throws RarException / public BufferedImage getImage(int idx) throws IOException, RarException { return this.getImage(this.imageFileNames.get(idx)); } /** ファイル…

Android設定画面の作成

設定画面を作っていて多すぎじゃないか、作るのに時間がめっちゃかかる。基本的の設定画面を作ってあとは気が向いたら作ることにしようかな。 最低限、表題、縦書き、横書きぐらいでいいか。 あなた: androidのpreferenceに書き換えて jComboTitle = new JCo…

iniからandroid向けのpreference画面を作る

PC版ではiniに設定ファイルを保存していたのをAndroidで使われるpreferenceから設定を書き換える。 developer.android.com あなた: 次のiniからandroid向けのpreference画面を作って #AozoraEpub3 Parameters #Thu Oct 10 00:33:19 GMT+09:00 2024 AutoFileN…

androidのintentでpngとjpgの複数画像ファイルの選択方法

挿絵の場合は本文にファイル名が書かれているので、ファイル名から探索すればいい。表紙の場合は、ファイル名を直接渡す必要がある。SAFから呼び出した場合に複数ファイルを一括して処理をするとどれが表紙かわからなくなる。 本文ファイルと挿絵と表紙を一…

アンドロイドアプリのUIを作る

アンドロイドアプリのUIを作る EPUB生成まではできたが次は画像、外字フォント、表紙がちゃんと読み込めるかをテストする。 今のファイル読み込みは、zipとtxtに制限しているので画像の読み込みがzip内にある場合に制限されている。表紙を別にSAFで読み込む…

androidのテストコードの書き方がわからない

Windowsで動いていた部分のコードをAndroid Studioで動くかをテストしたかったのだけど、いまいちよくわからなかった。なので、MainActivity.javaに直接ログ出力させていた。確認ができればいいかな。 アンドロイドアプリ上でテストできればそれで良いのだけ…

Androidで画像の情報を取得したい。

Androidで画像の情報を取得したい。 imageioがAndroidで使えないので、書き換える必要がある。 ImageInfo.java 次のコードAndroid向けに書き換えて このコードは、Java SE の ImageIO を使用して画像の情報を取得するものですが、Android では ImageIO が利…

ImageUtils.javaのバグ?

あなた: 次のコードを説明して try { if (imageType == BufferedImage.TYPE_BYTE_BINARY && imageType == BufferedImage.TYPE_BYTE_INDEXED && imageType == BufferedImage.TYPE_INT_ARGB) { g.setColor(Color.WHITE); g.fillRect(0, 0, scaledW, scaledH); …

log出力処理をhandlerを使って更新する

logをTextViewに表示したいが、logは他のクラスも呼び出しているのでちゃんと動くかが気になった。 この LogAppender クラスは、ログ出力のラッパーとして動作し、ログを Android の Log.d() に出力するとともに、指定された TextView にもログを表示するユ…

Android版AozoraEpub3公開に向けて

Android版AozoraEpub3を作れないかを試してみた。EPUB出力まで言ったので途中段階だけど公開してみよう。画像ファイルの読み込みが上手くいかないのと外字フォントや設定変更などの機能をつけていない。ちゃんと動くまで公開しないといつまでも公開できそう…

AozoraEpub3のテンプレートファイルの読み込みzip出力処理

androidの場合はInputStream inputStream = context.getAssets().open(templatePath+fileName); このコードをInputStreamに書き換える private void writeFile(ZipArchiveOutputStream zos, String fileName) throws IOException { zos.putArchiveEntry(new …

AozoraEpub3で表紙がない場合に適当に表紙を作る

AozoraEpub3では表紙をSVGラッピングで作っているのでいっそのことSVGでタイトルと著者名を入れてSVG出力すればいいのでは。 表紙の設定は4項目ある 何行目までの先頭の挿絵 入力ファイル名と同じ画像 表紙なし http:/ ここに、表紙の自動生成を追加する。 A…