日曜日, 11月 30, 2025

VS Codeで文字化けしているファイル修正

VS Codeで文字化けしているファイル修正手順を整理しました。
 
発端はサイトのリニューアルで20年も前のHTMLファイルが文字化けしてしまい、その修正を迫られたからです。いや、気がつかなかった私が悪いのですが・・・

まず文字コード指定といらない部分を削除し・・・

新たに文字コード(UTF-8)を指定します。
ただし、このまま保存しても文字化けは解消されません。
 
編集が面したの文字コードが指定と異なっているからです。、そこで、この部分をクリックして・・・

表示されたパレットから[エンコード付きで保存]をクリックし・・・

文字コードを指定して保存すれば・・・

文字化けは解消されます。

該当ページはExpressionというDrawソフトでのイラスト作成手順ですが、Illustratorなdp、他のDraw系ツールにも応用できるので公開しています。

kaizu.comNewsにリンクしています。

TCDW8601 
分かっていても何処にあるのか分からなくなる悪夢

Baby Alien 168
手袋から生まれたバンザイ系(^o^)
もう使うこともないだろうと思って処分すると、後から「処分しなければ〜」と公開するのはお約束ですね。だから色々と溜まってしまうんですよね〜。そして、あることは分かっていても何処にあるのか分からなくなる悪夢(^o^)汗

土曜日, 11月 29, 2025

Illustratorでアンカーポイントの追加はアクションで

Scriptで作成しようとして挫折してしまい、アクションで問題なかったと気がつきました。

まず[オブジェクト]>[パス]>[アンカーポイントの追加]をアクション登録します。あとは登録したアクションの複製を作成し、複製側の[アンカーポイントの追加]を複製します。

コレを繰り返せば完了です。ここでは1〜5回まで作成しました。

左から1回、3回、5回です。必要に応じてショートカット登録すれば完璧です。

TCDW8600 
密林のブラックフライデー対象外商品

常用している商品が絵に描いたように密林のブラックフライデー対象外商品なのは、我ながら笑える。いや、現実はそんなもんですね。

金曜日, 11月 28, 2025

Photoshopの背景削除と調和は驚異的

Photoshopの背景削除と調和は驚異的ですね。

用意した背景画像

用意した合成用に人物画像

レイヤーを重ねてから人物の例ターのサイズを適宜調整してから、[ウィンドウ]>[コンテキスとタスクバー]でコンテキスとタスクバーを表示し、[背景を削除]を実行・・・

背景が消えたらコンテキスとタスクバーの[調和]を実行すれば・・・

完成です。背景のライティングをしっかり考慮して調整されています。凄いです。

処理後のレイヤーは上の様になるので必要に応じて処理後にも調整可能です。

TCDW8599 
二度と関わらないと決めました

あるトラブルでメーカーのサイトに行っても該当するトラブルのコーナーが無いので電話をかけたらLINEで対応との音声案内。結局LINEをしていないとだめだと分かってガッカリ。私はLINEが大嫌い。最近はAIチャットでも対応もありますが、せめてメールで対応してくれてもとは思うのですが、重要な製品ではないので諦めました。二度と関わらないと決めました。

木曜日, 11月 27, 2025

Illustratorの無駄知識34 
クロスと重なりはブラシ登録でリセットされる

何かと便利な[オブジェクト]>[クロスと重なり]ですが、ブラシ登録ではリセットされてしまいます。

ジグザグなどで作成した上のようなデータをアートブラシ登録します。上図の下が元データ。上が[クロスと重なり]調整したデータ。

[クロスと重なり]調整したデータをアートブラシ登録します。登録後もブラシパレットでは正しく登録されているように見えますが・・・

円などに指定すると元の状態で処理されてしまい、[クロスと重なり]処理は反映されません。
上図左が反映され無かった結果。
上図右はアートブラシ登録データを[クロスと重なり]ではなく[ウィンドウ]>[パスファインダー]>[分割]で、しっかりと色分けしたデータをアートブラシ登録した結果です。

TCDW8598 
エジプトを舞台にしたハムナプトラ2の正統続編だそうです

なんと、リック・オコーネルをブレンダン・フレイザー、エヴリン・オコーネルをレイチェル・ワイズが演じるハムナプトラ4が決定したそうです。エジプトを舞台にしたハムナプトラ2の正統続編だそうです。とても楽しみです。ハムナプトラ3は設定がちょっと・・・でしたからね。

水曜日, 11月 26, 2025

Excelでの連番設定はROW関数

Excelでの連番設定はROW関数にしておくと何かと便利です。

サンプルは以下の様に設定しています。
連番A 数値のフィル
連番B B2: =ROW()をフィル
連番C C2: =ROW()-1をフィル
連番D D2: =ROW()+2をフィル
連番E E2: =ROW()*2をフィル
連番F F2: =ROW()/2をフィル
連番G G2: =SQRT(ROW())をフィル

ここで7番目の行を作字すると・・・

数値入力の行(連番A)のみ連番後抜けた状態になりますが、ROW関数を使っている行は、連番を保っています。変更の可能性は常に考慮してROW関数を利用すると良いでしょう。

サイトの改装が完了しました



22日にkaizu.comサイトの改装告知をしていましたが、その後ページが不安定でしたが不安定問題は解決し、サイトも今朝改装しました。今回はシンプルに整理しました。

TCDW8597 
もう11月も後半なので直ぐに12月ですね

Baby Alien 167
ウサギかネズミか分からない系(^o^)
雨が降っていると出かけるのも「おっくう」になるので、引きこもりへ「まっしぐら」。しかし、もう11月も後半なので直ぐに12月ですね。

火曜日, 11月 25, 2025

Photoshopで透明部分を含むデータ書き出し

質問がありましたので・・・
今更ながらですが、印刷用としてPhotoshopで透明部分を含むデータ書き出す場合について整理してみました。

レイヤーマスクにグラデーションなどで透明部分を作成したデータを・・・

8bit/チャンネル、CMYKカラーに変更して書き出します。

PSD形式以外ではTIFF形式で書き出しますが・・・

透明部分を含んでいる場合は上の設定がウッパン的です。ただし、ほとんどのアプリケーショ ンで TIFF の透明機能をサポートしていないません。また、印刷業界で一般的に使用されるソフトウエアや RIP(ラスターイメージ プロセッサ)システムが、TIFF 形式の透明度情報を適切に処理できないことがあるためです。そのため、透明部分を含んでいる場合のデータ書き出しは原則 PSD と理解した方が安全です。

勿論生成した画像はIllustratorやInDesignに配置します。

Illustratorに配置した状態。

配置画像に下に任意の色で塗り潰した矩形を配置。

レイヤーの関係はこんな感じ。

配置画像に上に任意のキャラクターなどを配置。

レイヤーの関係はこんな感じ。もし透明部分を含んだでーたとしてRGBのPNGファイルが渡された場合は、CMYKへ返還後にPSD形式で書き出せばOKです。迷ったらPSD形式ですね。

TCDW8596 
同一の別ファイルは何も問題ないのに

20年以上前のAdobe GoLive 5で作成したHTMLファイルの文字化け修正が出来ずに撃沈。同一の別ファイルは何も問題ないのに悔しい。

月曜日, 11月 24, 2025

Let's start JavaScript 88 
指定画像をキュビスム風の画像に変換

指定画像をキュビスム風の画像に変換します。あくまでも「〜風」です(^o^)

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>キュビスム風画像変換</title>
<style>
body {
background: #1e1e1e;
color: #eee;
font-family: sans-serif;
text-align: center;
}
canvas {
border: 1px solid #555;
margin-top: 10px;
background: #ccc;
}
.controls {
margin: 10px;
}
input[type="range"] {
width: 300px;
}
</style>
</head>
<body>
<h2>キュビスム風変換(サイズ調整対応)</h2>

<input type="file" id="fileInput" accept="image/*"><br>

<div class="controls">
<label>ブロックサイズ:
<input type="range" id="sizeSlider"
        min="5" max="80" value="25">
<span id="sizeValue">25</span>px
</label>
</div>

<canvas id="canvas"></canvas>

<script>
const fileInput = document.getElementById("fileInput");
const sizeSlider = document.getElementById("sizeSlider");
const sizeValue = document.getElementById("sizeValue");
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");

let img = null;
let imgData = null;

// ファイル選択 → キュビスム変換
fileInput.addEventListener("change", e => {
const file = e.target.files[0];
if (!file) return;
img = new Image();
img.onload = () => {
canvas.width = img.width;
canvas.height = img.height;
ctx.drawImage(img, 0, 0);
imgData = ctx.getImageData(0, 0, img.width, img.height);
drawCubism();
};
img.src = URL.createObjectURL(file);
});

// サイズ変更スライダー
sizeSlider.addEventListener("input", () => {
sizeValue.textContent = sizeSlider.value;
if (imgData) drawCubism();
});

function drawCubism() {
const blockSize = parseInt(sizeSlider.value);
const width = canvas.width;
const height = canvas.height;
const data = imgData.data;

// 背景をリセット
ctx.fillStyle = "#e0e0e0";
ctx.fillRect(0, 0, width, height);

// 幾何的に分解再構成
const total = (width * height) / (blockSize * blockSize);
for (let i = 0; i < total; i++) {
const x = Math.random() * width;
const y = Math.random() * height;
const px = (Math.floor(y) * width + Math.floor(x)) * 4;
const r = data[px];
const g = data[px + 1];
const b = data[px + 2];

const sides = 3 + Math.floor(Math.random() * 3); // 3〜5角形
const angle = Math.random() * Math.PI * 2;
const size = blockSize * (0.8 + Math.random() * 0.4);

ctx.beginPath();
for (let j = 0; j < sides; j++) {
const theta = angle + j * (Math.PI * 2 / sides);
const dx = x + Math.cos(theta) * size;
const dy = y + Math.sin(theta) * size;
j === 0 ? ctx.moveTo(dx, dy) : ctx.lineTo(dx, dy);
}
ctx.closePath();

// 塗りと線でキュビスム感
ctx.fillStyle =
        `rgba(${r},${g},${b},${0.7 + Math.random()*0.3})`;
ctx.fill();
if (Math.random() < 0.1) {
ctx.strokeStyle = `rgba(0,0,0,${0.2 + Math.random()*0.3})`;
ctx.lineWidth = 0.5 + Math.random() * 1.2;
ctx.stroke();
}
}
}
</script>
</body>
</html>
<!-- index.html -->

実行したら画像を指定するだけです。

元画像

結果はこんな感じです。ブロックサイズを調整すれば・・・

ソレっぽい雰囲気を演出できます。