SINさんより、Roland SD-50用の音源定義ファイルをご投稿いただきました。
ありがとうございましたm(_ _)m
ダウンロードはこちらの下の方からどうぞ。
https://takabosoft.com/domino/module
SINさんのサイト(hatena)はこちらです。
http://d.hatena.ne.jp/SIN-28/
他にも音源定義ファイルを公開されている方、ご提供いただける方はメールにてご連絡ください。
こちらでリンクを貼らせていただきます。
SINさんより、Roland SD-50用の音源定義ファイルをご投稿いただきました。
ありがとうございましたm(_ _)m
ダウンロードはこちらの下の方からどうぞ。
https://takabosoft.com/domino/module
SINさんのサイト(hatena)はこちらです。
http://d.hatena.ne.jp/SIN-28/
他にも音源定義ファイルを公開されている方、ご提供いただける方はメールにてご連絡ください。
こちらでリンクを貼らせていただきます。
新年あけましておめでとうございます。
本年もよろしくお願いいたします。
・・・とブログを書こうと思ってだらだら過ごしていた結果がもう5日です、酷いモンです。
昨年は体調が悪いことが多く、絶不調な1年だったなぁと思います。
なので今年は健康第一で心身ともに元気にやっていきたいと思います。
運動不足も深刻なので、なんとか体を動かしていきたいです。
これはプログラマ、というか自宅大好きな人には課題ですね。
昨年水泳道具をとりあえず揃えたのに結局(温水)プールに行かなかったので、今年こそは行ってみたいと思います。
そして出来れば毎週通いたいです。
(せっかく近場に新しい市営プールが出来たので、行こう行こうとは思っていたのですが。)
wii fitのバランスボードも何故か故障(電池変えても反応しない)しているので、今年中には修理に出したいと思います。
(なんか梱包とか郵送したりするの面倒くさいなぁと思いつつ年が明けてしまいました。)
プログラムの方は去年は・・・
という感じでした。
今年はC#を触る機会がもう少し増えそうです。
C#はDispose(using)地獄さえ見なければすごく扱いやすいので、お気に入りです。
そんなわけで、今年もお付き合いをお願いいたしますm(_ _)m
最近C#を勉強してます(というか一通り勉強し終わった感じです)。
WPFだとドロップシャドウを簡単に付けれるのですが、Formだと出来ないっぽいので、ちょっと作ってみました。
影の色や不透明度、ぼかし具合も自由に変えられます。
対象がBitmapなので、やろうと思えば文字列にドロップシャドウを加えることも出来ます。
/// <summary> /// ドロップシャドウを加えた新しいビットマップを作成します。 /// </summary> /// <param name="srcBmp">対象のビットマップ</param> /// <param name="blur">ぼかし</param> /// <param name="distance">影の距離</param> /// <param name="shadowColor">影の色</param> /// <param name="baseOffset">描画先オフセット値の格納先</param> /// <returns>ドロップシャドウが加えられた新しいビットマップ</returns> private static Bitmap AppendDropShadow(Bitmap srcBmp, int blur, Point distance, Color shadowColor, out Point baseOffset) { baseOffset = new Point(0, 0); if (srcBmp == null || blur < 0) { return null; } // ドロップシャドウを含めた新しいサイズを算出 Rectangle srcRect = new Rectangle(0, 0, srcBmp.Width, srcBmp.Height); Rectangle shadowRect = srcRect; shadowRect.Offset(distance.X, distance.Y); Rectangle shadowBlurRect = shadowRect; shadowBlurRect.Inflate(blur, blur); Rectangle destRect = Rectangle.Union(srcRect, shadowBlurRect); baseOffset.X = destRect.X - srcRect.X; baseOffset.Y = destRect.Y - srcRect.Y; Bitmap destBmp = new Bitmap(destRect.Width, destRect.Height, PixelFormat.Format32bppArgb); // 影部分をレンダリングする BitmapData destBmpData = destBmp.LockBits(new Rectangle(0, 0, destRect.Width, destRect.Height), ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb); BitmapData srcBmpData = srcBmp.LockBits(srcRect, ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb); unsafe { byte* destLine = (byte*)destBmpData.Scan0 + (shadowBlurRect.Y - destRect.Y) * destBmpData.Stride + (shadowBlurRect.X - destRect.X) * 4; byte* srcBeginLine = (byte*)srcBmpData.Scan0 + (- blur - blur) * srcBmpData.Stride + (- blur - blur) * 4; int destWidth = shadowBlurRect.Width; int destHeight = shadowBlurRect.Height; int srcWidth = srcBmp.Width; int srcHeight = srcBmp.Height; int div = (1 + blur + blur) * (1 + blur + blur); byte r = shadowColor.R; byte g = shadowColor.G; byte b = shadowColor.B; float alpha = shadowColor.A / 255.0f; int destStride = destBmpData.Stride; int srcStride = srcBmpData.Stride; for (int destY = 0; destY < destHeight; destY++, destLine += destStride, srcBeginLine += srcStride) { byte* dest = destLine; byte* srcBegin = srcBeginLine; for (int destX = 0; destX < destWidth; destX++, dest += 4, srcBegin += 4) { // α値をぼかす int total = 0; byte* srcLine = srcBegin; for (int srcY = destY - blur - blur; srcY <= destY; srcY++, srcLine += srcStride) { if (srcY >= 0 && srcY < srcHeight) { byte* src = srcLine; for (int srcX = destX - blur - blur; srcX <= destX; srcX++, src += 4) { if (srcX >= 0 && srcX < srcWidth) { total += src[3]; } } } } dest[0] = b; dest[1] = g; dest[2] = r; dest[3] = (byte)((total / div) * alpha); } } } srcBmp.UnlockBits(srcBmpData); destBmp.UnlockBits(destBmpData); // 元の画像を重ねる using (Graphics g = Graphics.FromImage(destBmp)) { g.DrawImage(srcBmp, srcRect.X - destRect.X, srcRect.Y - destRect.Y, srcBmp.Width, srcBmp.Height); } return destBmp; }
LockBitsはtry catchした方が良かったかな、まあいいか。
Domino Ver.1.38からチャネルプレッシャーの出力処理が正しく行われていませんでしたので、修正版を出しておきます。
ダウンロードはこちらからどうぞ。
→https://takabosoft.com/domino
細かい部分でも構いませんので、またもし不具合を見つけられましたらwikiやメール等でご連絡ください。
EDGE2更新しました。
今回からXPの視覚テーマをなるべく適用するようにしました(XP/Vista/7では画面の見た目が変わります)。
これを機に、取扱説明書のスクリーンショットを全て撮り直し、形式もMS-Word形式からchm形式に変更し、本体に同梱するようにしました。
(製品として説明書が同梱していないのは駄目ですよね(^^;)
説明書の中身は同じです。
ダウンロードはこちらからどうぞ。
→https://takabosoft.com/edge2