[ 前へ | 目次 | 次へ ]
Now Loading...
ダウンロード
PC (※スマートフォンでは動きません) でダウンロードし、ZIPファイルを右クリックメニューから展開して、できたフォルダ内の「 VCSSL.bat(バッチファイル) 」をダブルクリックすると起動します。 Linux等では「 VCSSL.jar 」をコマンド実行してください。
» 詳しい使用方法や、エラーで展開できない際の対応方法などはこちら

画像を任意サイズに拡大・縮小する簡易ツール

このプログラムは、画像ファイルを開き、任意のサイズに拡大・縮小して、別名で保存する簡易ツールです。

» 複数ファイル一括処理版はこちら !

使用方法

ダウンロードと展開(解凍)

まず、PC(スマホは未対応)で上の画面の「 ダウンロード 」ボタンを押してください。 するとZIP形式で圧縮されたファイルがダウンロードされます。

Windows をご使用の方は、ここでまずZIPファイルを右クリックし、「プロパティ」を選んで開かれる画面で、 下の方にあるセキュリティ項目の「許可する」にチェックを入れて「OK」で閉じてください。 これを行わないと、ZIP展開やソフト起動時に、警告メッセージが出て展開完了/起動できない場合があります。

その後、ZIPファイルを右クリックして「すべて展開」や「ここに展開」などで展開(解凍)してください。 展開が成功すると、ZIPファイルと同じ名前のフォルダができ、その中にZIPファイルの中身が入っています。

» 展開がエラーで止まってしまう場合や、ファイル名が文字化けしてしまう場合は…

プログラムの起動

Windows をご使用の場合

上記でZIPファイルを展開したフォルダ内にある、以下のバッチファイルをダブルクリック実行してください:

VCSSL__ダブルクリックでプログラム実行.bat

もしプログラムを書き変えながら使いたい場合は、代わりに「 VCSSL_Editor__プログラム編集はこちら.bat 」を実行してください。

正常に起動できると、初回のみ、Java実行環境を入手するか等を尋ねられるので、適時答えて済ませると、プログラムが起動します。 2回目以降はすぐに起動します。

» うまく起動できずにエラーになってしまう場合は…

Linux 等をご使用の場合

ZIPファイルを展開したフォルダ内へコマンドライン端末で cd して、以下の通り入力して実行してください:

java -jar VCSSL.jar
(プログラムの内容を書き変えながら使いたい場合は、代わりに VCSSL_Editor.jar を実行)

» javaコマンドが使用できない等のエラーが表示される場合は…

実行中にメモリー容量が不足する場合は…

このプログラムは、使い方によっては、それなりに多くのメモリーを使用します。 そのため、デフォルトのメモリー容量設定では不足する場合があります。 その場合は以下の対処方法をご参照ください:

» 実行中にメモリー容量が不足する場合(Microsoft® Windows® をご使用の場合)
» 実行中にメモリー容量が不足する場合(Linux® 等やその他のOSをご使用の場合)

※ 目安として、4288 x 2848 サイズ(約1200万画素)の写真データを拡大・縮小する場合、大体 256MB くらい(以上)割り当てれば動くようです。

画像ファイルの選択(JPEGまたはPNG形式)

起動すると、まずファイルを選択する画面が表示されるので、サイズを変更(拡大・縮小)したい画像ファイルを選んでください。 画像ファイルのフォーマットは、現時点ではJPEG形式とPNG形式に対応しています。

サンプルとして、ダウンロード・展開したフォルダ内に「 sample.jpg 」が同梱されています。 まずはそれを選んでみましょう。 内容は下図の通りです。

サンプル画像(600x398)
サンプル画像「 sample.jpg 」
ダウンロード・解凍したフォルダ内に同梱されています。サイズは幅600 x 高さ398ピクセルです。この画像のサイズを変更(拡大・縮小)し、別の画像として保存してみます。

拡大・縮小後の画像の幅を指定

ファイルを選択した後は、拡大・縮小後の画像の幅を尋ねられるので、幅のピクセル数を整数で入力してください。

拡大・縮小後の画像の高さを指定

続いて拡大・縮小後の画像の高さですが、これには以下のように2通りのモードがあるため、 まずどちらかを選択します(選択ウィンドウが表示されます)。

高さの値を手動で設定
幅と同様に、高さのピクセル数を整数で指定します。元の画像と縦横比が変わってもよく、とにかく目的のサイズにしたい場合に使用します。
縦横比が同じになる高さに設定
先に入力された幅の値に基づいて、縦横比が元の画像と同じになるように、自動で高さの値を求めて設定します。縦横比を歪めたくない場合に使用します。

「高さの値を手動で設定」を選んだ場合には、続いて高さの値を入力するウィンドウが表示されるので、高さのピクセル数を整数で入力してください。

保存するファイルの画像形式や画質を選択

続いて、保存するファイルの画質形式を PNG または JPEG 形式から選択し、JPEGを選んだ場合は画質をパーセントで指定します。 「 100.0 」が最高画質です。なお、PNGを選んだ場合は、そもそも画質が劣化しない(可逆圧縮)形式なので、画質の入力は不要です。

拡大・縮小した画像ファイルの保存(自動)

あとは、指定サイズに拡大・縮小された1画像が、ファイルに自動で保存されます。 保存されるファイル名は、元のファイル名の末尾に「 _scale.png 」または「 _scale.jpg 」が付いたものになります。

サンプル画像で試した結果は下図の通りです(実際にこのツールで変換したファイルそのものを表示しています)。 ちゃんと、画像が別のサイズに変換されていますね。

サンプル画像の処理結果(200x132)
サンプル画像の拡大・縮小結果「 sample.jpg_scale.jpg 」
元画像の内容を、最初に指定したサイズ(この例では幅200 x 高さ132ピクセル)に拡大・縮小した内容になっています。

複数ファイル一括処理版もあります !

もしも処理対象のファイルがたくさんある場合は、上の手順をファイル1個ごとにくり返すのは、少し面倒です。 そのような場合のために、フォルダ内に複数ファイルを入れて一括処理するバージョン(下記リンク)もあります。 ぜひご利用ください!

画像を任意サイズに拡大・縮小する簡易ツール(複数ファイル一括処理版)
フォルダ内にある全ての画像ファイルを開き、任意のサイズに拡大・縮小して、別のフォルダに保存する簡易ツールです。

コード解説

このプログラムのコードはVCSSLで記述されています。

内容を書き変えて改造したい場合には、 プログラムのコード「 ImageScaler.vcssl 」をテキストエディタで開いて改造してください。 スクリプト言語なので、コンパイラなどの別ソフトは不要で、コードを書き換えるだけでOKです。 VCSSLはC系の単純な文法の言語なので、C言語などに触れた事のある方なら簡単に読めると思います。

コード全体

まずは、コード全体を見てみましょう。


coding UTF-8;       // 文字コードの明示(文字化け予防)
import Graphics;    // 画像処理に必要なライブラリの読み込み


// ユーザーに画像ファイルを選択してもらい、それを開いてグラフィックスデータを生成
string inputFilePath = choose("拡大・縮小したいファイルを選んでください。", "./");
int inputGraphics = newGraphics(inputFilePath);


// 元の画像の幅と高さを取得(出力画像の幅と高さを入力する際の初期値に使用)
int inputWidth = getGraphicsWidth(inputGraphics);
int inputHeight = getGraphicsHeight(inputGraphics);

// 出力画像の幅をユーザーに入力してもらう
int outputWidth = input("拡大・縮小後の画像の幅(ピクセル数)を入力:", inputWidth);

// 高さの設定モードの選択肢
const string HEIGHT_MODE_MANUAL = "高さの値を手動で設定";
const string HEIGHT_MODE_AUTO = "縦横比が同じになる高さに設定";

// 高さの設定モードをユーザーに選択してもらう
string heightMode = select("- 高さの設定モードを選択 -", HEIGHT_MODE_MANUAL, HEIGHT_MODE_AUTO);
while (heightMode == "- 高さの設定モードを選択 -") {
	heightMode = select("- 高さの設定モードを選択 -", HEIGHT_MODE_MANUAL, HEIGHT_MODE_AUTO);
}

// 設定モードに応じて高さを求める
int outputHeight = -1;
if (heightMode == HEIGHT_MODE_MANUAL) {
	outputHeight = input("拡大・縮小後の画像の高さ(ピクセル数)を入力:", inputHeight);
} else if (heightMode == HEIGHT_MODE_AUTO) {
	float magnification = (float)outputWidth / (float)inputWidth; // 拡大率
	outputHeight = (int)(inputHeight * magnification);
}

// 保存画像形式などをユーザーに指定してもらう
string saveFormat = select("- 保存する画像形式を選択 -", "PNG", "JPEG");
while (saveFormat == "- 保存する画像形式を選択 -") {
	saveFormat = select("- 保存する画像形式を選択 -", "PNG", "JPEG");
}
float quality = 100.0;
if (saveFormat == "JPEG") {
	quality = input("画質(%)を選択(0.0 〜 100.0)", "100.0");
}


// inputGraphicsを拡大・縮小した、新しいグラフィックスデータを生成
int outputGraphics = newGraphics(inputGraphics, outputWidth, outputHeight, true); // trueは滑らかにするための指定


// 別のファイル名(入力ファイル名+_scale.png/jpg)をつけて保存
string outputFilePath = inputFilePath + "_scale";
if (saveFormat == "PNG") {
	outputFilePath += ".png";
} else (saveFormat == "JPEG") {
	outputFilePath += ".jpg";
}
exportGraphics(outputGraphics, outputFilePath, saveFormat, quality); // ここでファイルに保存
popup("変換しました。保存ファイル: " + outputFilePath); // 完了メッセージをユーザーに表示

// リソースを破棄してプログラム終了
deleteGraphics(inputGraphics);
deleteGraphics(outputGraphics);
exit();
ImageScaler.vcssl

以上です。100行未満の比較的短いコードですね。 各部で行っている処理はコード内のコメントの通りですが、 以下では順を追ってもう少し詳しく説明します。

先頭領域

まずは、先頭の2行です。


coding UTF-8;       // 文字コードの明示(文字化け予防)
import Graphics;    // 画像処理に必要なライブラリの読み込み
code/import.txt

1行目では、コードのファイルで使用している文字コード(Shift_JIS)を宣言しています。 書かなくても動きますが、書いておくと文字化けを防げます。Shift_JISの他にUTF-8も使用できます。

2行目では、グラフィックスデータを扱うための機能を提供する Graphics ライブラリを読み込んでいます。 ここで「 グラフィックスデータって一体何? 」となるかと思いますが、いわゆる画像データの事だと思ってください。 VCSSLでは、画像を読み込んだり表示したり描画したりといった事に必要なデータを、まとめてグラフィックスデータという形で扱います。

ファイルを選択し、グラフィックスデータを生成

続いて、ファイルを開く部分です。


// ユーザーに画像ファイルを選択してもらい、それを開いてグラフィックスデータを生成
string inputFilePath = choose("拡大・縮小したいファイルを選んでください。", "./");
int inputGraphics = newGraphics(inputFilePath);
code/open.txt

6行目で呼んでいる choose 関数は、ユーザーにファイル選択画面を提示して、 選ばれたファイルのパスを文字列として返します。それを string 型変数の inputFilePath に控えています。

このファイルパスを7行目で newGraphics 関数の引数に渡していますが、 これによってファイルが画像として開かれ、その内容を保持するグラフィックスデータが生成されます。 要するに画像データがメモリー上に展開されます。

この newGraphics 関数は、生成したグラフィックスデータにID番号を割りふって返すので、その値をint型変数の inputGraphics に控えています。 このIDは、複数のグラフィックスデータを区別するのに使用します(実際、後で透明化した別のグラフィックスデータを生成します)。

開いた画像の幅と高さを取得し、さらに拡大・縮小後の幅をユーザーから受け取る

続いて、上で開いた画像ファイルの幅と高さをピクセル数単位で取得します。 さらに、拡大・縮小後の画像の幅をユーザーに入力してもらいます(高さは、すぐ後でモードに応じて求めます)。


// 元の画像の幅と高さを取得(出力画像の幅と高さを入力する際の初期値に使用)
int inputWidth = getGraphicsWidth(inputGraphics);
int inputHeight = getGraphicsHeight(inputGraphics);

// 出力画像の幅をユーザーに入力してもらう
int outputWidth = input("拡大・縮小後の画像の幅(ピクセル数)を入力:", inputWidth);
code/width.txt

ここで使用している input 関数は、ユーザーにメッセージを表示して値を入力してもらい、その入力値を返します。

ユーザーに高さの設定モードを選択してもらう

その後は拡大・縮小後の高さを求める関する処理に入ります。 これには 使用方法 の項目でも述べた通り、以下の2通りのモードを選べるようにしています:

高さの値を手動で設定
幅と同様に、高さのピクセル数を整数で指定します。元の画像と縦横比が変わってもよく、とにかく目的のサイズにしたい場合に使用します。
縦横比が同じになる高さに設定
先に入力された幅の値に基づいて、縦横比が元の画像と同じになるように、自動で高さの値を求めて設定します。縦横比を歪めたくない場合に使用します。

そこで、前者の選択肢を文字列定数「 HEIGHT_MODE_MANUAL 」、後者の選択肢を文字列定数「 HEIGHT_MODE_AUTO 」として定義した上で、 ユーザーにどちらかを選択してもらいます。これには select 関数を使用します。


// 高さの設定モードの選択肢
const string HEIGHT_MODE_MANUAL = "高さの値を手動で設定";
const string HEIGHT_MODE_AUTO = "縦横比が同じになる高さに設定";

// 高さの設定モードをユーザーに選択してもらう
string heightMode = select("- 高さの設定モードを選択 -", HEIGHT_MODE_MANUAL, HEIGHT_MODE_AUTO);
while (heightMode == "- 高さの設定モードを選択 -") {
	heightMode = select("- 高さの設定モードを選択 -", HEIGHT_MODE_MANUAL, HEIGHT_MODE_AUTO);
}
code/selectmode.txt

最初の選択肢をメッセージとして使用しているので、そのままOKされてしまった場合には、 有効なものを再選択してもらうために直後に while 文で再表示させています(有効な選択肢が選択されたら、この while 文は抜けます)。

設定モードに応じて、拡大・縮小後の高さを求める

続いて、上で選択された設定モードに応じて、拡大・縮小後の画像の高さを、ピクセル単位で求めます。


// 設定モードに応じて高さを求める
int outputHeight = -1;
if (heightMode == HEIGHT_MODE_MANUAL) {
	outputHeight = input("拡大・縮小後の画像の高さ(ピクセル数)を入力:", inputHeight);
} else if (heightMode == HEIGHT_MODE_AUTO) {
	float magnification = (float)outputWidth / (float)inputWidth; // 拡大率
	outputHeight = (int)(inputHeight * magnification);
}
code/height.txt

選択されたモードは変数 heightMode に入っています。 これが「 HEIGHT_MODE_MANUAL (高さの値を手動で設定) 」だった場合には、幅と同様に、ユーザーに高さを入力してもらいます。

また、モードが「 HEIGHT_MODE_AUTO (縦横比が同じになる高さに設定) 」だった場合には、 まず入力された拡大・縮小後の幅(outputWidth)を、元画像の幅(inputWidth)で割って、拡大率を求めます。 ここで両者は int 型なので、そのまま除算すると結果も整数になってしまい、 小数点以下が落ちてしまうので(いわゆる整数除算の注意点)、 float 型にキャストした上で除算しています。

そして、求めた拡大率を元画像の高さにかけて、拡大・縮小後の高さを求めています。 こうすると、幅の拡大率と高さの拡大率が同じになるので、画像の縦横比を保ったまま拡大・縮小できます。

保存する画像ファイルの形式や画質などを、ユーザーに入力してもらう

その後は、保存する画像の形式や画質なども入力してもらって控えます。


// 保存画像形式などをユーザーに指定してもらう
string saveFormat = select("- 保存する画像形式を選択 -", "PNG", "JPEG");
while (saveFormat == "- 保存する画像形式を選択 -") {
	saveFormat = select("- 保存する画像形式を選択 -", "PNG", "JPEG");
}
float quality = 100.0;
if (saveFormat == "JPEG") {
	quality = input("画質(%)を選択(0.0 〜 100.0)", "100.0");
}
code/selectformat.txt

画像形式の選択については、上で既に見た設定モードの選択と同様です。 選択されたのがJPEG形式の場合は、画質をユーザーに入力してもらいます。 PNG形式の場合は、そもそも画質が劣化しない可逆圧縮形式なので不要です。

入力画像のグラフィックスデータから、一部領域の内容を切り抜いたグラフィックスデータを生成

さて、このツールの要の処理である、画像の拡大・縮小を行っている部分です。 と言っても以下の通り、少し多い引数で newGraphics 関数を呼んでいるだけです。


// inputGraphicsを拡大・縮小した、新しいグラフィックスデータを生成
int outputGraphics = newGraphics(inputGraphics, outputWidth, outputHeight, true); // trueは滑らかにするための指定
code/scale.txt

この引数の組み合わせで newGraphics 関数を呼ぶと、 既にあるグラフィックスデータの内容を、 指定サイズに拡大・縮小した上で、その内容を保持するグラフィックスデータを生成してくれます。 最初の引数(inputGraphics)に元のグラフィックスデータのIDを渡します。 その後に続けて、拡大・縮小後の幅と高さを渡します。 最後の引数には、画像を滑らかにするアンチエイリアス処理の有無を指定します。 ここに true を指定すると滑らかに拡大・縮小できますが、処理時間が少し長くなるので、不要な場合は false を指定してください。

この関数は、生成した新しいグラフィックスデータにID番号を割りふって返すので、 それをint型変数 outputGraphics に控えています(ファイルの保存の際に使います)。

拡大・縮小した内容を画像ファイルとして保存

次がもう一つの重要な処理である、画像ファイルの保存処理です。


// 別のファイル名(入力ファイル名+_scale.png/jpg)をつけて保存
string outputFilePath = inputFilePath + "_scale";
if (saveFormat == "PNG") {
	outputFilePath += ".png";
} else (saveFormat == "JPEG") {
	outputFilePath += ".jpg";
}
exportGraphics(outputGraphics, outputFilePath, saveFormat, quality); // ここでファイルに保存
popup("変換しました。保存ファイル: " + outputFilePath); // 完了メッセージをユーザーに表示
code/export.txt

変数 outputFilePath が保存ファイル名ですが、 同じファイル名で上書き保存してしまうのは大抵の用途でまずそうなので、 開いたファイル名の末尾に(画像形式に応じて)「 _scale.png 」や「 _scale.jpg 」を付けたファイル名で保存するようにしています。

その後は、exportGraphics 関数を呼んで、グラフィックスデータを画像ファイルに保存しています。 そして、ユーザーに処理完了(と保存ファイルのパス)を伝えるメッセージを表示しています。

終了

さて、最後です。グラフィックスデータを解放して、プログラムを終了しています。


// リソースを破棄してプログラム終了
deleteGraphics(inputGraphics);
deleteGraphics(outputGraphics);
exit();
code/exit.txt

deleteGraphics は、グラフィックスデータを解放する関数です。 どうせプログラムを終了した時点で解放されるのですが、後片付け的な感じで明示的に解放しています。 その後、exit 関数を呼んでプログラムを終了しています (これが無いと、ユーザーがコンソール画面を閉じるまで終了しません)。

コード内容は以上です。

ライセンス

このVCSSL/Vnanoコード( 拡張子が「.vcssl」や「.vnano」のファイル )は実質的な著作権フリー(パブリックドメイン) である CC0 の状態で公開しています。 記事中にC言語/C++/Java言語などでのサンプルコードが掲載されいてる場合は、それらについても同様です。 そのままでのご利用はもちろん、改造や流用などもご自由に行ってください。

※ ただし、このコードの配布フォルダ内には、ダウンロード後すぐに実行できるように、 VCSSLの実行環境も同梱されており、そのライセンス文書は「 License 」フォルダ内に同梱されています (要約すると、商用・非商用問わず自由に使用できますが、使用の結果に対して開発元は一切の責任を負いません、といった具合の内容です)。 配布フォルダ内の各構成物の一覧やライセンスについては「 ReadMe_使用方法_必ずお読みください.txt 」をご参照ください。

※ Vnano の実行環境については、別途スクリプトエンジンのソースコードも一般公開しており、 何らかのソフトウェア内に組み込んでご利用いただく事も可能です。詳細はこちらをご参照ください。

この記事中の商標などについて

  • OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
  • Windows は、米国 Microsoft Corporation の米国およびその他の国における登録商標です。この記事は独立著作物であり、Microsoft Corporation と関連のある、もしくはスポンサーを受けるものではありません。
  • Linux は、Linus Torvalds 氏の米国およびその他の国における商標または登録商標です。
  • その他、文中に使用されている商標は、その商標を保持する各社の各国における商標または登録商標です。

[ 前へ | 目次 | 次へ ]
画像を任意サイズに拡大・縮小する簡易ツール(複数ファイル一括処理版)

フォルダ内にある全ての画像ファイルを開き、任意のサイズに拡大・縮小して、別のフォルダに保存する簡易ツールです。
画像を任意サイズに拡大・縮小する簡易ツール

画像ファイルを開き、任意のサイズに拡大・縮小して、別名で保存する簡易ツールです。
画像の矩形(四角形)領域を切り抜く簡易ツール(複数ファイル一括処理版)

フォルダ内にある全ての画像ファイルを開き、その中の矩形(四角形)領域を切り抜いて、別のフォルダに保存する簡易ツールです。
画像の矩形(四角形)領域を切り抜く簡易ツール

画像ファイルを開き、その中の矩形(四角形)領域を切り抜いて保存する簡易ツールです。
連番画像をアニメーション再生する簡易ツール

フォルダ内の連番画像ファイルを、動画への変換不要で、そのままアニメーションとして再生できる簡易ツールです。
条件を満たす色を透明にする簡易ツール(複数ファイル一括処理版)

フォルダ内の全画像ファイルに対して、条件を満たす範囲の色を透明に置き換え、別のフォルダに保存する簡易ツールです。
特定の色を透明にする簡易ツール(複数ファイル一括処理版)

フォルダ内にある全てのPNG形式画像ファイルを開き、特定の色を透明に置き換えた上で、別のフォルダに保存する簡易ツールです。
条件を満たす色を透明にする簡易ツール

画像ファイルを開き、指定された条件を満たす色を透明に置き換えて保存する簡易ツールです。
特定の色を透明にする簡易ツール

画像ファイルを開き、特定の色を透明に置き換えて保存する簡易ツールです。
2DCGと3DCGの合成

2DCGと3DCGを一枚に合成し、画面に表示するプログラムの例です。
RGBやカラーコードの色表示と相互変換ができる簡易ツール

RGB値とカラーコードから、GUI画面上で色の表示や相互変換を行う事ができる簡易ツールです。
頂点配列によるモデルの変形アニメーション

頂点配列によってモデルを変形アニメーションさせるサンプルです。
頂点配列によるモデルの作成(四角形格子メッシュ形式)

四角形格子メッシュの形式で、頂点配列からモデルを作成するサンプルです。
この階層の目次
[ 前へ | 目次 | 次へ ]
RINEARN からのお知らせ
※ VCSSL は RINEARN が開発しています。

各ソフトやVCSSLの英語版ドキュメント整備がほぼ完了
2025-06-30 - RINEARNでは2年前から、AIの補助による英語版ドキュメントの大幅拡充計画を進めてきました。今回、主要ドキュメント&コンテンツの英訳がほぼ完了し、一応の目標水準に達しました。詳細をお知らせします。

VCSSLの最新版をリリース: 外部プログラムとの連携機能を少し強化、他
2025-05-25 - VCSSL 3.4.52をリリースしました。外部プログラム(C言語製の実行ファイル等)との連携機能を少し強化し、文字化け対策やOS判別などを可能にしました。他にも細かい機能追加があります。詳細をお知らせします。

VCSSLの最新版をリリース、Java 24上での非互換な挙動を対処
2025-04-22 - VCSSL 3.4.50をリリースしました。Java 24環境上でのネットワークドライブ関連のファイルパス解決で、従来環境とは異なる挙動が生じていたのを解消しました。詳細をお知らせします。

リニアングラフやVCSSLの最新版をリリース、目盛りの位置や内容を自由に指定可能に!
2024-11-24 - リニアングラフ3D/2Dを更新し、自由な位置に、自由な表記内容の目盛りを描けるようになりました! 併せて、Java言語やVCSSLでの、プログラム制御用APIも拡張しています。詳細をお知らせします。

Exevalator 2.2 をリリース、TypeScript 対応によりWebブラウザ上で動作可能に
2024-10-22 - オープンソースの式計算ライブラリ「Exevalator(エグゼバレータ)」の2.1をリリースしました。新たに TypeScript に対応し、Webブラウザ上での式計算にも使えるようになりました。詳細を解説します。

アシスタントAI作成の舞台裏(その2、作成編)
2024-10-12 - アシスタントAIの作成方法解説の後編です。実際にChatGPTの「GPTs」機能を用いて、アシスタントAIを作成する手順や、独自の知識をもたせたり、精度を出すためのノウハウなどを解説しています。

アシスタントAI作成の舞台裏(その1、基礎知識編)
2024-10-07 - アシスタントAI作成方法解説の前編です。今回はまず、アシスタントAIを作る前に抑えておきたい、基礎知識を延々と解説しています。そもそもLLM型AIとはどんな存在か? RAGとは何か? 等々です。

ソフトの利用をサポートしてくれるアシスタントAIを提供開始!
2024-09-20 - RINEARN製ソフトの使い方の質問応答や、一部作業のお手伝いをしてくれる、アシスタントAIを提供開始しました。ChatGPTアカウントさえあれば、誰でも無料で使用できます。使い方を解説します。

Exevalator 2.1 をリリース、新たに Visual Basic に対応
2024-07-28 - オープンソースの式計算ライブラリ「Exevalator(エグゼバレータ)」の2.1をリリースしました。今回から、新たに Visual Basic(VB.NET)でも使用できるようになりました。詳細を解説します。

関数電卓 RINPn(りんぷん)、Esc キーで計算式の一発クリアが可能に
2024-07-20 - 関数電 RINPn の Ver.1.0.2 をリリースしました。今回から、キーボードの「 Esc 」キーを押すと、入力中の計算式を一発でクリアできるようになりました。詳細を解説します。