我有一个DICOM图像,我正在使用C#读取并将其转换为16位图.创建位图但图像具有DICOM叠加.我想在创建最终的dicom位图时将叠加层刻录到位图中.我无法做到这一点.有帮助吗?
一种方法是创建叠加数据的位图并合并2个位图,但我也无法将叠加数据作为位图.我已经捕获了二进制覆盖数据但是如何刻录到位图?
谢谢
我可以将资源图像从drawable文件夹加载到位图中,甚至可以进行缩放,但是现在我需要从存储在SD卡上的任何图像中加载图像,我可以看到这将允许我查看和选择;
startActivityForResult(new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), 1);
Run Code Online (Sandbox Code Playgroud)
但到目前为止,我一直无法确切地找出返回的数据以及如何将其加载到位图中.
更新:
这就是我现在所得到的;
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode == RESULT_OK) {
Uri contentURI = Uri.parse(intent.getDataString());
c = mSurfaceHolder.lockCanvas();
tempCanvas.setBitmap(mDrawing);
Bitmap tempBitmap = null;
ContentResolver cr = getContentResolver();
try {
InputStream in = cr.openInputStream(contentURI);
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize=8;
tempBitmap = BitmapFactory.decodeStream(in,null,options);
}
catch (Exception ee) {
tempBitmap = BitmapFactory.decodeResource(getResources(),
R.drawable.icon);
}
tempCanvas.drawBitmap(tempBitmap, 0, 0, null);
c.drawBitmap(tempBitmap, 0, 0, null);
mSurfaceHolder.unlockCanvasAndPost(c);
}
}
Run Code Online (Sandbox Code Playgroud)
用logcat显示"app已经意外停止"出错了;
ERROR/AndroidRuntime(24768): …Run Code Online (Sandbox Code Playgroud) 我一直在当前项目中使用位掩码来跟踪用户角色,但现在我需要能够为所有具有特定角色的用户执行查找.
我的角色设置如下:
ROLES = %w[admin editor moderator contributor]
def roles
ROLES.reject do |r|
((roles_mask || 0) & 2**ROLES.index(r)).zero?
end
end
def roles=(roles)
self.roles_mask = (roles & ROLES).map { |r| 2**ROLES.index(r) }.sum
end
def role_symbols
roles.map(&:to_sym)
end
Run Code Online (Sandbox Code Playgroud)
我可以找到具有完全相同位图的所有用户,但不知道如何提取一个特定角色,在这种情况下,所有用户都具有"编辑器"角色.
ruby ruby-on-rails bitmap declarative-authorization ruby-on-rails-3
我正在绘制一些Bitmaps到画布.这些位图中的一些(大多数)使用alpha通道,透明度/半透明度对于图像看起来正确至关重要.这是必要的,因为我在整个过程中执行了一些图像处理Activity.
最终用户完成了他们的任务,我使用画布并使用此方法将其保存到PNG:
Bitmap.createBitmap(this.getWidth(), this.getHeight(), Bitmap.Config.ARGB_8888);
Run Code Online (Sandbox Code Playgroud)
此时我不再对画布/图像进行任何修改,但我确实将图像显示Canvas在另一个图像中Activity.我希望它看起来和以前完全一样Activity,所以如果我使用它Bitmap.Config.RGB_565或者我会丢失信息是否重要?
有没有办法在Android中扩展Bitmap类?我有一种感觉,你不能,但我想创建一个代表一个下降对象的位图类(这些对象从屏幕顶部落下的数量不确定,每个都必须执行一些一种碰撞检测).我可以扩展/实现位图类来创建我想要的自定义类吗?
我是Objective C的新手.我正在尝试将(现在的基本行)绘制到位图上,然后在屏幕上为Iphone绘制位图.
以下是我试过的代码,它只显示空白屏幕:
- (void)drawRect:(CGRect)rect
{
CGContextRef screen = UIGraphicsGetCurrentContext();
size_t width = rect.size.width;
size_t height = rect.size.height;
void *data = malloc(width*height*4);
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef c = CGBitmapContextCreate(data, width, height, 8, width*4, colorSpace, kCGImageAlphaPremultipliedFirst);
CGFloat black[4] = {0.0f,0.0f,0.0f,1.0f}; // setting the color in CMYK format
CGContextSetStrokeColor(c, black);
CGContextBeginPath(c);
CGContextMoveToPoint(c, 5.0f, 5.0f);
CGContextAddLineToPoint(c, 50.0f, 50.0f);
CGContextAddLineToPoint(c, 100.0f, 60.0f);
CGContextMoveToPoint(c, 100.0f, 100.0f);
CGContextAddLineToPoint(c, 50.0f, 150.0f);
CGContextStrokePath(c);
CGImageRef img = CGBitmapContextCreateImage(c);
CFRelease(c);
free(data);
CGContextDrawImage(screen, rect, img);
CGContextFlush(screen);
CGContextFlush(c);
CFRelease(colorSpace);
CGImageRelease(img);
CFRelease(screen); …Run Code Online (Sandbox Code Playgroud) 我有一个使用Bitmap.getPixels()方法从位图派生的int数组.此方法使用Bitmap中的像素填充数组.当我循环遍历该数组时,如何获得每个像素的xy坐标?在此先感谢Mat.
[更新]感谢您的数学.我试过以下代码.我有一个位图,我已经将前50000像素更改为白色.我现在想迭代位图并将所有白色像素更改为红色.atm只有一条红线穿过位图顶部的白色像素块.你有什么想法吗?非常感谢.
int length = bgr.getWidth()*bgr.getHeight();
int[] pixels = new int[length];
bgr.getPixels(pixels,0,bgr.getWidth(),0,0,bgr.getWidth(),bgr.getHeight());
for (int i=0;i<50000;i++){
// If the bitmap is in ARGB_8888 format
pixels[i] = Color.WHITE;//0xffffffff;
}
bgr.setPixels(pixels,0,bgr.getWidth(),0,0,bgr.getWidth(),bgr.getHeight());
int t = 0;
int y = t / bgr.getWidth();
int x = t - (y * bgr.getWidth());
for( t = 0; t < length; t++){
int pixel = bgr.getPixel(x,y);
if(pixel == Color.WHITE){
bgr.setPixel(x,y,Color.RED);
x++;y++;
}
}
Run Code Online (Sandbox Code Playgroud) 我使用以下代码在图像上添加了黑白滤镜:
var n:Number = 1/3;
var matrix:Array = [n,n,n,0,0,
n,n,n,0,0,
n,n,n,0,0,
0,0,0,1,0];
var cmf:ColorMatrixFilter = new ColorMatrixFilter(matrix);
_bitmap.bitmapData.applyFilter(_buffer, _sourceRect, new Point(), cmf);
Run Code Online (Sandbox Code Playgroud)
我现在希望能够删除此过滤器,但我似乎无法弄清楚如何.我已经读过,如果我清除_bitmap.filters数组,它应该被删除,但是当我检查时,这个数组是空的.
有没有人对我怎么做这个有什么建议?
编辑 我正在使用FlashPunk游戏引擎,我正在操作Image.as类中的bitmapData.我的所有代码都是使用FlashDevelop编写和编译的.
编辑
由于flashpunk flashpunk引擎中的图像类使用bitmapData.CopyPixels()函数绘制位图,因此我无法将过滤器直接应用于位图.过滤器未应用于bitmapData,因此未绘制.
我已经更改了render方法以使用bitmapData.draw()函数,该函数使用实际的位图来绘制图像.
我现在可以通过执行以下操作向我的位图添加过滤器:
_bitmap.filters = [ColorMatrixFilter];
Run Code Online (Sandbox Code Playgroud)
然后我可以通过执行以下操作删除我的过滤器:
_bitmap.filter = [];
Run Code Online (Sandbox Code Playgroud) 我搜索了很多,但似乎没有什么对我有用.在这方面,非常感谢某人的帮助.非常感谢.我是AS3的新手.我正在使用FlashDevelop.以下是我使用的代码,
包{
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Matrix;
import flash.geom.Point;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.BitmapDataChannel;
import flash.net.URLRequest;
import flash.events.MouseEvent;
import flash.utils.ByteArray;
import flash.net.FileReference;
import com.adobe.images.JPGEncoder;
import flash.geom.Rectangle;
public class Main extends Sprite
{
private var modelBmp : BitmapData;
private var alphaBmp : BitmapData;
private var destPoint : Point = new Point(0, 0);
private var mask1:Loader = new Loader();
private var mask2:Loader = new Loader();
private var f:Bitmap;
private var fileReference:FileReference = new FileReference();
private var …Run Code Online (Sandbox Code Playgroud) 如何使用加载到电影库中的位图设置.beginBitmapFill()?我在互联网上找到的每个例子都使用加载器类从外部加载位图,但我想从库中加载它.
我想转:
mesh.graphics.beginFill(0xFFFFFF,1);
Run Code Online (Sandbox Code Playgroud)
成
mesh.graphics.beginBitmapFill(..., null, true, false);
Run Code Online (Sandbox Code Playgroud)
我的形状填充了加载到库中的平铺'bitmap.bmp'.主要问题是我如何处理fill方法中的库位图.