火曜日, 11月 05, 2024

HTMLとCSSの様々な表現 19 
配置画像の一部を表示する

配置画像の一部分だけを表示させる。
配置画像の元サイズが分かるように同サイズの矩形も表示させています。

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<style>
body {
background: mediumpurple;
height: 100vh;
margin: 0;
display: flex;
justify-content: center; /* 水平方向中央揃え */
align-items: center; /* 垂直方向中央揃え */
}
.mainbox {
width: 300px;
height: 300px;
background: mediumvioletred;
}
.image-crop {
width: 300px;
height: 300px;
overflow: hidden;
}
.image-crop img {
clip-path: inset(50px 100px 50px 100px);
/* 上, 右, 下, 左の順に切り取る */
}
</style>
</head>
<body>
<div class="mainbox">
<div class="image-crop">
<img src="pic/image.jpg" alt="切り取りイメージ">
</div>
</div>
</body>
</html>
<!-- index.html -->

切りとりをしていない状態
clip-path: inset(0px 0px 0px 0px);
/* 上, 右, 下, 左の順に切り取る */

clip-path: inset(50px 100px 50px 100px);
/* 上, 右, 下, 左の順に切り取る */

clip-path: inset(0px 0px 100px 100px);
/* 上, 右, 下, 左の順に切り取る */

clip-path: inset(100px 100px 0px 0px);
/* 上, 右, 下, 左の順に切り取る */

TCDW8212 
全く違う物を意識していたのですが・・・こうなりました

Baby Alien 038
尻尾も作ったのに見えなかった(^o^)
目が合って固まってしまった彼はウサギではないらしい。全く違う物を意識していたのですが・・・こうなりました(^o^)汗。最初のアイデアは非公開です。

月曜日, 11月 04, 2024

IllustratorのデータをPNG書き出しでPowerPointに配置する場合

IllustratorのデータをPNG書き出しでPowerPointに配置する場合の手順を整理しました。説明はPNG形式ですが、JPEG等でも同様です。

まず作業中のデータを選択して・・・
[ファイル]>[書き出し]>[書き出し形式]で保存すると・・・

オプションパレットで非選択範囲も書き出されてしまいます。

そのため、書き出したい部分を選択し、コピー&ペーストで新規アートボードに配置して処理します。

[ファイル]>[書き出し]>[書き出し形式]で保存する際、デフォルトは72ppiなので、低解像度になってしまいますので要注意。

そこで高解像度の設定で書き出します。PowerPointの推奨サイズは以下を参考にしてください。大きなスクリーンを想定する場合は出来るだけ高解像度が好ましいでしょう。

pixel = mm × ppi ÷ 25.4
mm = pixel × 25.4 ÷ ppi
ppi = pixel × 25.4 ÷ mm

72ppiで書き出した画像

300ppiで書き出した画像

以下も参照してください。
IllustratorデータをPowerPointに読み込むときの注意点 2022/09/28

TCDW8211 
ゴジラvsキングギドラ(1991)

Amazon Primeで「ゴジラvsキングギドラ(1991)」を鑑賞。この頃は友人達とゴジラ映画を見る会?を企画していたことを思い出しました。映画はタイムトラベルが重要な鍵となり23世紀から来た中川安奈演じるエミーがメカキングギドラを操縦し・・・。監督&脚本は大森一樹。歴代ゴジラ作品では間違いなくベスト5入りしていますね。

日曜日, 11月 03, 2024

Excel VBA 34 
単純処理とショートカット登録



ExcelのVBAは、単純処理が日¥外にも重宝します。マクロで記録するとソースがシンプルではないので、記述したほうが賢明です。そしてショートカット登録もVBAで記述すると整理しやすいです。

 ■時刻の加算処理のデフォルトは24時間でリセットされてしまいますが、リセットさせないためには表記を h:mm から [h]:mm に変更する必要があります。
-----------------
' 24時間でのリセットを無効に
Sub 時間リセット無効()
Dim selectedRange As Range
Set selectedRange = Selection
selectedRange.NumberFormat = "[h]:mm"
End Sub
-----------------

比率表記の % は整数なので必要に応じて小数点以下を表記したい場合は表記を 0% から 0.0% に変更する必要があります。
-----------------
' 少数1桁までの%表記に
Sub 少数桁表記()
Dim selectedRange As Range
Set selectedRange = Selection
selectedRange.NumberFormat = "0.0%"
End Sub
-----------------

■フォントの変更
-----------------
' メイリオに変更
Sub メイリオ()
Dim selectedRange As Range
Set selectedRange = Selection
selectedRange.Font.Name = "メイリオ"
End Sub
-----------------

■フォントの色替え
-----------------
' フォントを赤に変更(その1)
Sub フォントを赤に()
Selection.Font.Color = vbRed
' vbBlack: 黒 vbBlue: 青 vbCyan: シアン
' vbGreen: 緑 vbMagenta: マゼンタ
' vbRed: 赤 vbWhite: 白 vbYellow: 黄
End Sub
-----------------

■フォントの色替え(RGB指定)
-----------------
' フォントを赤に変更(その2)
Sub フォントを赤に()
Selection.Font.Color = RGB(255, 0, 0) ' 赤色
End Sub
' (その2)で指定した方が
' テーマカラーの切り替えに連動しないので合理的です
-----------------


vbRed等はOfficeのカラーパレットの標準色がベースです。Accent1〜6はカラーパレットのテーマ色で上図右の左から1〜6となっています。
また .TintAndShade-1から 1までの値で指定します。以下のコメント部分を参照。

■セルを塗り潰し
-----------------

' 塗りを薄い青に変更(その1)
Sub 塗りを水色に()
With Selection.Interior
' ここでテーマカラーを指定します
' Accent1〜6
.ThemeColor = xlThemeColorAccent1
' 0.5は明るくする値です。
' -1(完全な黒)
' -0.9(90%暗く)〜-0.1(10%暗く
' 0(本来の色)
' 0.1(10%明るく)〜0.9(90%明るく
' 1(完全な白)
.TintAndShade = 0.7
End With
End Sub
-----------------

■セルを塗り潰し(RGB指定)
-----------------
' 塗りを薄い青に変更(その2)
Sub 塗りを水色に()
With Selection.Interior
' ここでテーマカラーを指定します
Selection.Interior.Color = RGB(163, 217, 240) ' 水色
End With
End Sub
' (その2)で指定した方が
' テーマカラーの切り替えに連動しないので合理的です
-----------------

■登録するショートカット
最初にコレを実行してから個々のVBAをショートカットで実行します。今回のサンのプルでは「セルを塗り潰し」と「フォントを赤に変更」を2種類記述していますが、実際に利用するときはどちらか1つとしてください。同じ名前の重複はトラブルの元です。
-----------------
Sub ショートカット有効()
Application.OnKey "^+A", "時間リセット無効"
Application.OnKey "^+C", "少数桁表記"
Application.OnKey "^+D", "メイリオ"
Application.OnKey "^+E", "フォントを赤に"
Application.OnKey "^+G", "塗りを水色"
End Sub
' Ctrl + Shift + Aで「時間リセット無効」を実行
' Ctrl + Shift + Cで「少数桁表記」を実行
' Ctrl + Shift + Dで「メイリオ」を実行
' Ctrl + Shift + Eで「フォントを赤に」を実行
' Ctrl + Shift + Gで「塗りを水色に」を実行
' Shiftキー + (正符号)
' Control(Ctrl)キー ^ (カレット)
' Alt キー % (パーセント記号)
' command * (アスタリスク)※ Excel 2011のみ
' macOS版でもShift、Controlだけを使った方が賢明です
-----------------
ショートカットキーの登録は重複しないようにします。今回の例はmacOS上で処理していますので以下がダメでしたが、
Ctrl + Shift + B    Ctrl + Shift + F
Windowsだと以下がダメでした。
Ctrl + Shift + F    Ctrl + Shift + G
Officeに限らず他のツールとの関係もあるので個々の環境で異なります。

なお、冒頭のSubで始まるVBAの名称に日本語は使えますが、全角の英数字が混在しているとエラーになります。

TCDW8210 
雨降る屋外の駐車場でぞうきんを使って洗車している人

昨日雨の中コストコに買い物に行ったのですが、雨降る屋外の駐車場でぞうきんを使って洗車している人がいて不気味でした。普通はやらないですよね〜。

土曜日, 11月 02, 2024

Illustratorのオートトレースでグラデーションが綺麗に

Illustrator2025の新機能
オートトレースでグラデーションが綺麗に再現出来るようになりました。ただし、Drawデータの場合で、写真のトレースでは無理みたい。

まず、Illustratorで作成したイラストをラスタライズし・・・

オートトレースします。デフォルトは白黒なので、上の様になりますが・・・



ここでオプションを、
カラーモード: カラー
パレット: 自動
に変更し・・・

続けて

透明部分にチェックを入れ、グラデーションにもチェックを入れて適宜値を調整します。個々0では50%としてみました。

これでグラデーション部分のトーンジャンプが消えて滑らかになりました。

このイメージは拡張してベジュデータに変更されても保たれます。グラデーションにチェックを入れなければ、今までのようにポスタリゼーション風のデータになります。

TCDW8209 
万年筆をメインにしていた頃で、いい感じの手帳

14年前の手帳を偶然読み返してみたら、万年筆をメインにしていた頃で、いい感じの手帳になっていました。今はボールペンがメインなので、チョット味気ないかも。万年筆を持ち歩くと色々と事故が発生するのですが、見直したくなりました。

金曜日, 11月 01, 2024

Visual Studio Basic_40 
西暦に対する十干十二支を計算

ちょっと気まぐれで、西暦に対する十干十二支(じっかんじゅうにし)を計算してみました。

レイアウトは上の様にしました。
L=Label
TB=TextBox
B=Button

ソースの「-----------------」は区切り線なので記述の必要はありません。

青字は自動入力部分で修正の必要はありません。 黒字が入力部分です。 緑字はコメント文なので記述の必要はありません。

------------------
Public Class Form1
Private Sub Button1_Click(sender As Object,
e As EventArgs) Handles Button1.Click
' TextBox1に入力された西暦を取得
Dim year As Integer
If Integer.TryParse(TextBox1.Text, year) Then
' 十干十二支を計算してLabel4に表示
Label4.ForeColor = Color.Green
Label4.Text = GetJikkanJunishi(year)
Else
' 入力が無効な場合のエラーメッセージ
Label4.ForeColor = Color.Red
Label4.Text = "有効な西暦年を入力"
End If
End Sub

Private Function GetJikkanJunishi(year As Integer) As String
' 十干の配列
Dim jikkan() As String = {"甲(きのえ)", "乙(きのと)",
"丙(ひのえ)", "丁(ひのと)", "戊(つちのえ)",
"己(つちのと)", "庚(かのえ)", "辛(かのと)",
"壬(みずのえ)", "癸(みずのと)"}
' 十二支の配列
Dim junishi() As String = {"子(ね)", "丑(うし)",
"寅(とら)", "卯(う)", "辰(たつ)", "巳(み)",
"午(うま)", "未(ひつじ)", "申(さる)",
"酉(とり)", "戌(いぬ)", "亥(い)"}

' 十干を計算(西暦年を10で割った余りで決定)
Dim jikkanIndex As Integer = (year + 6) Mod 10
' 十二支を計算(西暦年を12で割った余りで決定)
Dim junishiIndex As Integer = (year + 8) Mod 12

' 十干と十二支を結合して結果を返す
Return jikkan(jikkanIndex) & junishi(junishiIndex)
End Function

Private Sub Button2_Click(sender As Object,
e As EventArgs) Handles Button2.Click
TextBox1.ResetText()
Label4.ResetText()
End Sub

Private Sub Button3_Click(sender As Object,
e As EventArgs) Handles Button3.Click
End
End Sub
End Class
------------------

2024年は甲辰です。

関ヶ原の合戦の年は庚子でした。

関係ない文字を入力するとエラーが表示されます。

Visdual Studio 2022のBasicで作成しています。
12AnimalZodiac_100.zip
クリックするといきなりダウンロードが始まります。
実際のプログラム完成日は2024年8月17日です。
Windows版です。

TCDW8208 
私が雪ダルマに見えるのは地球人だけです

Baby Alien 037
I'm not a snowman.(^o^)
私が雪ダルマに見えるのは地球人だけです。私は砂ダルマ星人です(^o^)なんて馬鹿なことを考えてみました。