Windowsで動いていた部分のコードをAndroid Studioで動くかをテストしたかったのだけど、いまいちよくわからなかった。なので、MainActivity.javaに直接ログ出力させていた。確認ができればいいかな。
アンドロイドアプリ上でテストできればそれで良いのだけれど。そうすると、実機でやるかエミュレーター上で動かすしかないので動かすまでの時間がかかる。 qiita.com
テストコード 外字ルビ変換など
package io.github.kyukyunyorituryo.aozoraepub3; import android.annotation.SuppressLint; import android.os.Bundle; import android.widget.TextView; import androidx.activity.EdgeToEdge; import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; import java.io.BufferedWriter; import java.io.IOException; import java.io.StringWriter; import io.github.kyukyunyorituryo.aozoraepub3.util.CharUtils; import io.github.kyukyunyorituryo.aozoraepub3.writer.Epub3Writer; import io.github.kyukyunyorituryo.aozoraepub3.converter.AozoraEpub3Converter; import io.github.kyukyunyorituryo.aozoraepub3.info.BookInfo; import io.github.kyukyunyorituryo.aozoraepub3.converter.AozoraGaijiConverter; import io.github.kyukyunyorituryo.aozoraepub3.converter.JisConverter; import io.github.kyukyunyorituryo.aozoraepub3.converter.LatinConverter; public class MainActivity extends AppCompatActivity { @SuppressLint("SetTextI18n") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); EdgeToEdge.enable(this); setContentView(R.layout.activity_main); TextView textArea=findViewById(R.id.textView); findViewById(R.id.button).setOnClickListener(v -> { String tst="55"+"WW"; textArea.setText(CharUtils.fullToHalf(tst)+tst); }); ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); return insets; }); Epub3Writer writer = new Epub3Writer(""); AozoraEpub3Converter converter = null; try { converter = new AozoraEpub3Converter(writer, this); } catch (IOException e) { throw new RuntimeException(e); } String str; try { str = converter.convertTitleLineToEpub3(converter.convertGaijiChuki("|ルビ※[#米印]《るび》※[#米印]※[#始め二重山括弧]※[#終わり二重山括弧]", true, true)); String line = converter.convertGaijiChuki("外字の後のルビ※[#(外字.tif)]《がいじ》", true, true); System.out.println(line); line = converter.convertGaijiChuki("外字の後の|ルビ※[#(外字.tif)]《がいじ》", true, true); System.out.println(line); line = converter.convertGaijiChuki("※[#(外字.tif)]《がいじ》", true, true); System.out.println(line); line = converter.convertGaijiChuki("外字の後の|ルビ《るび》※[#(外字.tif)]《るび》", true, true); System.out.println(line); line = converter.convertGaijiChuki("その上方に※[#逆三角形と三角形が向き合っている形(fig1317_26.png、横26×縦59)入る]《デアボロ》", true, true); System.out.println(line); converter.vertical = true; StringBuilder buf; buf = converter.convertRubyText("※《29※》"); System.out.println(buf); buf = converter.convertRubyText("※※#※》"); System.out.println(buf); buf = converter.convertRubyText("|※|縦線《たてせん》※|"); System.out.println(buf); //Assert.assertEquals(buf.toString(), "<ruby>|縦線<rt>たてせん</rt></ruby>|"); buf = converter.convertRubyText("※|縦線《たてせん》※|"); System.out.println(buf); //Assert.assertEquals(buf.toString(), "|<ruby>縦線<rt>たてせん</rt></ruby>|"); } catch (IOException e) { throw new RuntimeException(e); } System.out.println(str); String jarPath =""; AozoraGaijiConverter gaijiconverter; try { gaijiconverter = new AozoraGaijiConverter(this); } catch (IOException e) { throw new RuntimeException(e); } System.out.println(gaijiconverter.codeToCharString("U+0041")); System.out.println(gaijiconverter.codeToCharString("U+04E02")); System.out.println(gaijiconverter.toAlterString("感嘆符三つ")); JisConverter gconverter = JisConverter.getConverter(); System.out.println(gconverter.toCharString(0, 0, 1)); // ! System.out.println(gconverter.toCharString(1, 4, 87)); // か゚ System.out.println(gconverter.toCharString(1, 12, 90)); // null System.out.println(gconverter.toCharString(1, 13, 94)); // ☞ System.out.println(gconverter.toCharString(1, 14, 1)); // 俱 System.out.println(gconverter.toCharString(1, 16, 1)); // 亜 System.out.println(gconverter.toCharString(2, 94, 64)); // 䵷 System.out.println(gconverter.toCharString(2, 94, 86)); // 𪚲 System.out.println(gconverter.toCharString(1, 90, 16)); // 縈 1-90-16 System.out.println(gconverter.toCharString(2, 94, 85)); LatinConverter latinConverter = null; try { latinConverter = new LatinConverter(this); } catch (IOException e) { throw new RuntimeException(e); } System.out.println(latinConverter.toLatinCharacter("A&") ); System.out.println(latinConverter.toLatinCharacter("A`") ); System.out.println(latinConverter.toLatinCharacter("A\'") ); } }
'toLatinCharacter(java.lang.String)' is not public in 'io.github.kyukyunyorituryo.aozoraepub3.converter.LatinConverter'. Cannot be accessed from outside package