当前位置: 首页 > news >正文

无锡网站建设哪家专业婚纱摄影网站建设大概多少钱

无锡网站建设哪家专业,婚纱摄影网站建设大概多少钱,优秀的网络广告案例,众筹插件 wordpress一 图片参数的正确获取 先拿一张图片作为测试使用 图片参数如下#xff1a; 图片的尺寸为#xff1a; -宽1236个像素点 -高748个像素点 -色彩空间为RGB -描述文件为彩色LCD -带有Alpha通道 请记住这几个参数#xff0c;待会儿我们演示如何正确获取。 将这张图片分别放在…一 图片参数的正确获取 先拿一张图片作为测试使用 图片参数如下 图片的尺寸为 -宽1236个像素点 -高748个像素点 -色彩空间为RGB -描述文件为彩色LCD -带有Alpha通道 请记住这几个参数待会儿我们演示如何正确获取。 将这张图片分别放在三个位置 位置1: 2x图位置 位置2: 3x图位置 位置3: bundle中 然后我们通过代码分别获取这三个不同位置的图片然后输出他的宽高以及CGImageRef对象获取的宽高代码如下 输出结果如图所示 会发现如果单纯的使用[UIImage imageNamed:“”];方法来获取图片之后直接输出图片的宽高和图片的原尺寸是不相符的 如果是2X位置的图片输出的高度为图片真实高度/2的结果 如果是3X位置的图片输出的高度为图片真实高度/3的结果 如果是从bundle中直接获取图片输出的宽高为真实的结果。 原因是因为IOS会根据我们存放图片的位置不同在加载的时候对比例进行处理如果只是单纯的展示的话并不会有问题但是如果是做图片区域裁剪那么需要注意使用[UIImage imageNamed:“”]获取到的图片对象的size并不是图片的真实尺寸而是要使用CGImageRef来获取到图像的结构体指针再去获取到真正的图片尺寸。 官方文档里对[UIImage imageNamed:“”]是这样描述的 系统会从缓存中寻找这张图片并对图片进行适当调整以返回适合屏幕显示的图片所以如果这张图片在项目中会多次用到那么可以用这个方法来加载图片以提高内存资源利用效率和加载速度如果只是使用一次的话更推荐使用imageWithContentsOfFile:方法来加载图片这样图片不会被加载到缓存中较少内存压力。 二 使用CGImageRef获得图片的详细参数 CGImageRef中还存储了很多图片的信息打印一下 可以看到输出的参数有 CGColorSpace kCGColorSpaceICCBased ICCBased颜色空间 ICCBased颜色空间基于 ICC( 国际色彩组织 ) 制定的跨平台颜色配置文件 kCGColorSpaceModelRGB使用RGB颜色空间 LCD 使用LCD色域 width 1236 图片的宽度为1236个像素点 height 748 图片的高度为748个像素点 bpc 8每个通道有8bit 也就是支持256个色值 bpp 32 每个像素有32位R通道8位 G通道8位 B通道8位 A通道8位 32位 row bytes 4944每行占用4944个字节计算公式为(每个像素32位*每行1236个像素点/8bit 4944字节 kCGImageAlphaNoneSkipLast 有alpha通道且在最末尾但是不存储alhpa值 0 (default byte order)这个其实存储的是CGBitmapInfo使用默认的字节序 kCGImagePixelFormatPacked像素格式信息根据像素格式压缩 is mask? No是否为Mask图层Mask图层是设置其显示部分与不显示部分达到特殊的效果的方法 has masking color? No是否有mask color,如果设置有的话对应的颜色会变成透明 has soft mask是否有渐变遮罩 has matte? No是否有蒙版mask和matte两个的作用都是控制图像的透明区域的。通常mask都是在图层节点上临时绘制的。而matte很多时候都是使用现成的黑白图作为控制透明区域的图来使用。 should interpolate? Yes是否抗锯齿 使用CGImageRef 我们几乎可以获得我们想要的任何参数。 三 获取CGImageRef属性值的常用方法 先获取到CGImageRef的引用本章节介绍的方法全部基于该引用演示 UIImage *img [UIImage imageNamed:8BitImg2x];CGImageRef imgRef [img CGImage];1.获取图片的宽度 size_t CGImageGetWidth(CGImageRef cg_nullable image) 该方法返回一个sizt_t类型的数值size_t 的全称是size type是无符号整型size_t的真实类型与操作系统有关。 在32位的系统中定义为 typedef unsigned int size_t; 在64位系统中定义为 typedef unsigned long size_t; 使用的时候把它作为无符号整数使用就可以了 CGImageGetWidth方法返回图片的像素宽度使用及输出示例如下 size_t imgWidth CGImageGetWidth(imgRef);printf(图片的像素宽度为:%zu,imgWidth);输出结果图片的像素宽度为:12362.获取图片的高度 size_t CGImageGetHeight(CGImageRef cg_nullable image) 跟获取图片宽度的方法类似该方法返回图片的高度使用示例及结果输出如下 size_t imgHeight CGImageGetHeight(imgRef);printf(图片的像素高度为:%zu,imgHeight);输出结果图片的像素高度为:7483.获取图片每个颜色通道占用的位数bpp CGImageGetBitsPerComponent(CGImageRef cg_nullable image) 使用及输出示例如下: size_t bitsPerComponent CGImageGetBitsPerComponent(imgRef);printf(每个通道占用的位数:%zu,bitsPerComponent);输出结果每个通道占用的位数:84.获取每个像素点占用的位数 size_t CGImageGetBitsPerPixel(CGImageRef cg_nullable image) 使用及输出示例如下: size_t bitsPerPixel CGImageGetBitsPerPixel(imgRef);printf(每个像素占用的位数:%zu,bitsPerPixel);输出结果每个像素占用的位数:32其实通过CGImageGetBitsPerComponent方法及CGImageGetBitsPerPixel我们已经可以得知该图片格式为32位每个通道8位所以该图片也就是4通道RGBA格式带有alpha通道的图片这在我们需要判断图片是否带有alpha通道的场景下还是很有用的。 针对这个方法文尾还有更进一步的深究一定要看。(划重点) 5.获取每行像素占用的字节数 size_t CGImageGetBytesPerRow(CGImageRef cg_nullable image) 使用及输出示例如下: size_t bitsPerRow CGImageGetBytesPerRow(imgRef);printf(每行像素占用的位数:%zu,bitsPerRow);输出结果每行像素占用的位数:4944计算方法为图片的宽度1236宽有1236个像素点 * 每个像素占用的位数32 ÷ 每个字节的位数81byte 8bit 每行像素占用的字节数4944 6.获取图片的颜色空间 CGColorSpaceRef __nullable CGImageGetColorSpace(CGImageRef cg_nullable image) 使用及输出示例如下: CGColorSpaceRef colorSpaceRef CGImageGetColorSpace(imgRef);NSLog(颜色空间为%,colorSpaceRef);如果是8位三通道的图片那么CGImageGetBitsPerPixel方法返回的结果就是24拿一张不带alpha通道的图片验证一下 使用及输出示例如下: 输出结果颜色空间为CGColorSpace 0x60000151fea0 (kCGColorSpaceICCBased; kCGColorSpaceModelRGB; sRGB IEC61966-2.1)代表使用的是RGB颜色空间 7.获取图片的alpha信息 使用及输出示例如下: CGImageAlphaInfo imageAlphaInfo CGImageGetAlphaInfo(imgRef);NSLog(alpha通道信息为 %u,imageAlphaInfo);输出结果alpha通道信息为 5通过CGImageAlphaInfo的枚举值来查阅 typedef CF_ENUM(uint32_t, CGImageAlphaInfo) {kCGImageAlphaNone, /* For example, RGB. */kCGImageAlphaPremultipliedLast, /* For example, premultiplied RGBA */kCGImageAlphaPremultipliedFirst, /* For example, premultiplied ARGB */kCGImageAlphaLast, /* For example, non-premultiplied RGBA */kCGImageAlphaFirst, /* For example, non-premultiplied ARGB */kCGImageAlphaNoneSkipLast, /* For example, RBGX. */kCGImageAlphaNoneSkipFirst, /* For example, XRGB. */kCGImageAlphaOnly /* No color data, alpha data only */ };可知该图片的alpha信息为kCGImageAlphaNoneSkipLast代表该图片有alpha通道且在末尾但是忽略该值并不参与图片实际显示的计算。 CGImageAlphaInfo的作用 1位图是否包含alpha通道 2alpha位在图像数据中的位置在bimap首位还是末尾 3alpha值是否被预乘,在显示的时候是否需要将每个通道的值乘上alpa值作为最终展示的值 Alpha混合是通过使用线性插值公式将源图像的颜色分量与目标图像的颜色成分相结合来实现的。 对于每个枚举值的说明如下 kCGImageAlphaFirst 阿尔法分量存储在每个像素的最高有效位中。例如非预乘ARGB。 kCGImageAlphaLast 阿尔法分量被存储在每个像素的最低有效位中。例如非预乘RGBA。 kCGImageAlphaNone 没有alpha通道。 kCGImageAlphaNoneSkipFirst 没有alpha通道。如果像素的总大小大于颜色空间中颜色分量数量所需的空间则忽略最高有效位。 kCGImageAlphaOnly 没有颜色数据只有一个alpha通道。 kCGImageAlphaNoneSkipLast 没有alpha通道。 kCGImageAlphaPremultipliedFirst 阿尔法分量存储在每个像素的最高有效位中并且颜色分量已经乘以该阿尔法值。例如预乘ARGB。 kCGImageAlphaPremultipliedLast 阿尔法分量存储在每个像素的最低有效位中并且颜色分量已经乘以该阿尔法值。例如预乘RGBA。 8.获取像素点里的字节排序 CGImageByteOrderInfo CGImageGetByteOrderInfo(CGImageRef cg_nullable image) 使用及输出示例如下: CGImageByteOrderInfo imageByteOrderInfo CGImageGetByteOrderInfo(imgRef);NSLog(imageByteOrderInfo信息为 %d,imageByteOrderInfo);输出结果imageByteOrderInfo信息为 0CGImageByteOrderInfoCGImageAlphaInfo的枚举值来查阅 typedef CF_ENUM(uint32_t, CGImageByteOrderInfo) {kCGImageByteOrderMask 0x7000,kCGImageByteOrderDefault (0 12),kCGImageByteOrder16Little (1 12),kCGImageByteOrder32Little (2 12),kCGImageByteOrder16Big (3 12),kCGImageByteOrder32Big (4 12) } CG_AVAILABLE_STARTING(10.0, 2.0);可知该图片使用的字节排序位默认排序kCGImageByteOrderDefault CGImageByteOrderInfo定义了一个bitmap中像素读取的顺序主要分为大端小端读取模式 大端模式高字节保存在内存的低地址中而数据的低字节保存在内存的高地址中 小端模式高字节保存在内存的高地址中而数据的低字节保存在内存的低地址中 苹果手机使用的是小端读取模式如果在做到需要配置像素字节读取顺序这种需求的时候需要留意一下像素字节的读取顺序如果读取错误的话会导致颜色和图片的显示错误 常用枚举值的定义如下 kCGImageByteOrder16Little 16位小端读取 kCGImageByteOrder16Big 16位大端读取 kCGImageByteOrder32Little 32位小端读取 kCGImageByteOrder32Big 23位大端读取 需要注意quartz 2D引擎在iOS端只支持 kCGImageByteOrderDefaultkCGImageByteOrder16LittlekCGImageByteOrder16Big这三种读取模式 8.获取图片的CGBitmapInfo信息 CGBitmapInfo CGImageGetBitmapInfo(CGImageRef cg_nullable image) 使用及输出示例如下: CGBitmapInfo bitmapInfo CGImageGetBitmapInfo(imgRef);NSLog(bitmapInfo信息为 %d,bitmapInfo);输出结果bitmapInfo信息为 5枚举值定义如下 typedef CF_OPTIONS(uint32_t, CGBitmapInfo) {kCGBitmapAlphaInfoMask 0x1F,kCGBitmapFloatInfoMask 0xF00,kCGBitmapFloatComponents (1 8),kCGBitmapByteOrderMask kCGImageByteOrderMask,kCGBitmapByteOrderDefault kCGImageByteOrderDefault,kCGBitmapByteOrder16Little kCGImageByteOrder16Little,kCGBitmapByteOrder32Little kCGImageByteOrder32Little,kCGBitmapByteOrder16Big kCGImageByteOrder16Big,kCGBitmapByteOrder32Big kCGImageByteOrder32Big } CG_AVAILABLE_STARTING(10.0, 2.0);需要注意CGBitmapInfo 在使用的时候是需要跟适当的常量使用 | 操作符配合链接使用的 官方文档解释如下 所以我们在定义CGBitmapInfo作为参数传值使用的时候一般会使用CGImageAlphaInfo及CGImageByteOrderInfo搭配使用来定义图片是否含有alpha通道及读取顺序举例如下: CGBitmapInfo alphaInfo kCGImageAlphaLast | kCGImageByteOrder16Little; //alpha通道在末尾且使用16位小端读取的方式来读取所以使用CGImageGetBitmapInfo获取该图片的信息输出5应该搭配文初获取的图片信息来看 kCGImageAlphaNoneSkipLast | kCGImageByteOrderDefault 5 所以当我们直接获取CGBitmapInfo的值的时候图片输出结果为5 其余的几种方法使用频率较低可以翻阅api文档查阅 附 CGImageGetBitsPerPixel深究 在实际的项目开发中使用CGImageGetBitsPerPixel获取的图片位数也并不一定准确 接下来使用五张不同的图片来演示CGImageGetBitsPerPixel获取像素位数的问题 第一张图片 格式为 8bpc 24bpp 的Png格式的图片也就是每通道有8位,不带alpha通道bitmap为24位但是使用CGImageGetBitsPerPixel输出的结果却是32位结果错误 第二张图片 格式为 8bpc 24bpp 的Jpg格式的图片也就是每通道有8位,不带alpha通道bitmap为24位但是使用CGImageGetBitsPerPixel输出的结果却是32位结果错误 第三张图片 格式为 8bpc 24bpp 的Tiff格式的图片也就是每通道有8位,不带alpha通道bitmap为24位但是使用CGImageGetBitsPerPixel输出的结果是24位结果正确 第四张图片 格式为 16bpc 48bpp 的Png格式的图片也就是每通道有16位,不带alpha通道bitmap为48位但是使用CGImageGetBitsPerPixel输出的结果是48位结果正确 第五张图片 格式为 16bpc 48bpp 的Tiff格式的图片也就是每通道有16位,不带alpha通道bitmap为48位但是使用CGImageGetBitsPerPixel输出的结果是48位结果正确 使用五张图片信息如下 【命名规则(以img3CPng8Bit为例) img 3C(3channel 3通道) Png(图片格式) 8Bit(通道位深) img3CPng8Bit统一命名规则方便代码演示区分】 读取代码及输出结果如下: NSString *path8BitPng [[NSBundle mainBundle] pathForResource:img3CPng8Bit ofType:.png];NSData *bundleImgData8BitPng [NSData dataWithContentsOfFile:path8BitPng];UIImage *bundleImage8BitPng [UIImage imageWithData:bundleImgData8BitPng];CGImageRef imgRef8BitPng [bundleImage8BitPng CGImage];size_t bitsPerComponent8BitPng CGImageGetBitsPerComponent(imgRef8BitPng );printf(img8Bit3CPng 每个通道占用的位数:%zu \n,bitsPerComponent8BitPng );size_t bitsPerPixel8BitPng CGImageGetBitsPerPixel(imgRef8BitPng);printf(img8Bit3CPng 每个像素占用的位数:%zu \n\n,bitsPerPixel8BitPng );NSString *path8BitJpg [[NSBundle mainBundle] pathForResource:img3Cjpg8Bit ofType:.jpg];NSData *bundleImgData8BitJpg [NSData dataWithContentsOfFile:path8BitJpg];UIImage *bundleImage8BitJpg [UIImage imageWithData:bundleImgData8BitJpg];CGImageRef imgRef8BitJpg [bundleImage8BitJpg CGImage];size_t bitsPerComponent8BitJpg CGImageGetBitsPerComponent(imgRef8BitJpg );printf(img8Bit3CJpg 每个通道占用的位数:%zu \n,bitsPerComponent8BitJpg );size_t bitsPerPixe8BitJpg CGImageGetBitsPerPixel(imgRef8BitJpg);printf(img8Bit3CJpg 每个像素占用的位数:%zu \n\n,bitsPerPixe8BitJpg );NSString *path8Bit3CTiff [[NSBundle mainBundle] pathForResource:img3CTiff8Bit ofType:.tif];NSData *bundleImgData8Bit3CTiff [NSData dataWithContentsOfFile:path8Bit3CTiff];UIImage *bundleImage8Bit3CTiff [UIImage imageWithData:bundleImgData8Bit3CTiff];CGImageRef imgRef8Bit3CTiff [bundleImage8Bit3CTiff CGImage];size_t bitsPerComponent8Bit3CTiff CGImageGetBitsPerComponent(imgRef8Bit3CTiff );printf(img8Bit3CTiff 每个通道占用的位数:%zu \n,bitsPerComponent8Bit3CTiff );size_t bitsPerPixel8Bit3CTiff CGImageGetBitsPerPixel(imgRef8Bit3CTiff);printf(img8Bit3CTiff 每个像素占用的位数:%zu \n\n,bitsPerPixel8Bit3CTiff );NSString *path16Bit3CPng [[NSBundle mainBundle] pathForResource:img3CPng16Bit ofType:.png];NSData *bundleImgData16Bit3CPng [NSData dataWithContentsOfFile:path16Bit3CPng];UIImage *bundleImage16Bit3CPng [UIImage imageWithData:bundleImgData16Bit3CPng];CGImageRef imgRef16Bit3CPng [bundleImage16Bit3CPng CGImage];size_t bitsPerComponent16Bit3CPng CGImageGetBitsPerComponent(imgRef16Bit3CPng );printf(img16Bit3CPng 每个通道占用的位数:%zu \n,bitsPerComponent16Bit3CPng );size_t bitsPerPixe16Bit3CPng CGImageGetBitsPerPixel(imgRef16Bit3CPng);printf(img16Bit3CPng 每个像素占用的位数:%zu \n\n,bitsPerPixe16Bit3CPng );NSString *path16Bit3CTiff [[NSBundle mainBundle] pathForResource:img3CTiff16Bit ofType:.tif];NSData *bundleImgData16Bit3CTiff [NSData dataWithContentsOfFile:path16Bit3CTiff];UIImage *bundleImage16Bit3CTiff [UIImage imageWithData:bundleImgData16Bit3CTiff];CGImageRef imgRef16Bit3CTiff [bundleImage16Bit3CTiff CGImage];size_t bitsPerComponent16Bit3CTiff CGImageGetBitsPerComponent(imgRef16Bit3CTiff );printf(img16Bit3CTiff 每个通道占用的位数:%zu \n,bitsPerComponent16Bit3CTiff );size_t bitsPerPixel16Bit3CTiff CGImageGetBitsPerPixel(imgRef16Bit3CTiff);printf(img16Bit3CTiff 每个像素占用的位数:%zu \n\n,bitsPerPixel16Bit3CTiff );输出结果为 img8Bit3CPng 每个通道占用的位数:8 img8Bit3CPng 每个像素占用的位数:32 img8Bit3CJpg 每个通道占用的位数:8 img8Bit3CJpg 每个像素占用的位数:32 img8Bit3CTiff 每个通道占用的位数:8 img8Bit3CTiff 每个像素占用的位数:24 img16Bit3CPng 每个通道占用的位数:16 img16Bit3CPng 每个像素占用的位数:48 img16Bit3CTiff 每个通道占用的位数:16 img16Bit3CTiff 每个像素占用的位数:48 可以看到 8位3通道的Png及jpeg格式图片使用CGImageGetBitsPerPixel方法获取到的结果并不是24而是32 8位3通道tiff格式、16位3通道png格式、16位3通道tiff格式的图片输出结果都正确 猜测可能是苹果在加载最常用的8bpc格式的png及jpeg图片的时候如果图片本身没有alpha通道从本地读取图片数据的过程中会默认给图片增加一个不透明的值位255的alpha通道论证该猜想如下 集成opencv框架使用该框架创建一个宽度为3000高度为4000的矩阵再将该矩阵转化为8bpc 3通道的纯红色的图片然后使用读取该图片信息代码及输出如下 cv::Mat originImgMat1 Mat(3000, 4000, CV_8UC3);for(int row 0; row 3000; row ){for(int col 0; col 4000; col ){originImgMat1.atVec3b(row,col)[0] 255;originImgMat1.atVec3b(row,col)[1] 0;originImgMat1.atVec3b(row,col)[2] 0;}}UIImage *image [CVTools2 UIImageFromCVMat:originImgMat1];CGImageRef imageRef [image CGImage];size_t imgbitsPerComponent CGImageGetBitsPerComponent(imageRef );printf(imgbitsPerComponent 每个通道占用的位数:%zu \n,imgbitsPerComponent );size_t imgBitsPerPixe CGImageGetBitsPerPixel(imageRef);printf(imgBitsPerPixe 每个像素占用的位数:%zu \n\n,imgBitsPerPixe );UIImageFromCVMat 方法 (UIImage *)UIImageFromCVMat:(cv::Mat)cvMat {NSData *data [NSData dataWithBytes:cvMat.data length:cvMat.elemSize()*cvMat.total()];CGColorSpaceRef colorSpace;if (cvMat.elemSize() 1) {colorSpace CGColorSpaceCreateDeviceGray();} else {colorSpace CGColorSpaceCreateDeviceRGB();}CGDataProviderRef provider CGDataProviderCreateWithCFData((__bridge CFDataRef)data);// Creating CGImage from cv::MatCGBitmapInfo alphaInfo;if(cvMat.channels() 4){alphaInfo kCGImageAlphaLast | kCGImageByteOrder16Little;}else{alphaInfo kCGImageAlphaNone | kCGImageByteOrderDefault;}CGImageRef imageRef CGImageCreate(cvMat.cols, //widthcvMat.rows, //height8, //bits per component8 * cvMat.elemSize(), //bits per pixelcvMat.step[0], //bytesPerRowcolorSpace, //colorspacealphaInfo,// bitmap infoprovider, //CGDataProviderRefNULL, //decodetrue, //should interpolatekCGRenderingIntentDefault //intent);// Getting UIImage from CGImageUIImage *finalImage [UIImage imageWithCGImage:imageRef];CGImageRelease(imageRef);CGDataProviderRelease(provider);CGColorSpaceRelease(colorSpace);return finalImage; }输出结果为 imgbitsPerComponent 每个通道占用的位数:8 imgBitsPerPixe 每个像素占用的位数:24 可以看到输出的结果是正确的。 将该图片写入沙盒然后读取出来集成到项目中再次读取。代码及输出如下 NSString *path [[NSBundle mainBundle] pathForResource:red ofType:.png];NSData *bundleImgData [NSData dataWithContentsOfFile:path];UIImage *bundleImage [UIImage imageWithData:bundleImgData];CGImageRef imgRef [bundleImage CGImage];size_t bitsPerComponent CGImageGetBitsPerComponent(imgRef );printf(bitsPerComponent 每个通道占用的位数:%zu \n,bitsPerComponent );size_t bitsPerPixel CGImageGetBitsPerPixel(imgRef);printf(bitsPerPixel 每个像素占用的位数:%zu \n\n,bitsPerPixel );输出结果 bitsPerComponent 每个通道占用的位数:8 bitsPerPixel 每个像素占用的位数:32 可见从本地读取图片的时候又增加上了alpha通道。所以可以论证【可能是苹果在加载最常用的8bpc格式的png及jpeg图片的时候如果图片本身没有alpha通道从本地读取图片数据的过程中会默认给图片增加一个不透明的值位255的alpha通道】这个观点。 有其他想法欢迎留言一起交流学习后续会增加使用quartz 2D来完成图片裁剪需求的多种实现方式。
文章转载自:
http://www.morning.wjplm.cn.gov.cn.wjplm.cn
http://www.morning.pwwjs.cn.gov.cn.pwwjs.cn
http://www.morning.rwlsr.cn.gov.cn.rwlsr.cn
http://www.morning.skrxp.cn.gov.cn.skrxp.cn
http://www.morning.dnls.cn.gov.cn.dnls.cn
http://www.morning.tpnx.cn.gov.cn.tpnx.cn
http://www.morning.wkwds.cn.gov.cn.wkwds.cn
http://www.morning.mcfjq.cn.gov.cn.mcfjq.cn
http://www.morning.qrqcr.cn.gov.cn.qrqcr.cn
http://www.morning.hxcrd.cn.gov.cn.hxcrd.cn
http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn
http://www.morning.ptlwt.cn.gov.cn.ptlwt.cn
http://www.morning.mooncore.cn.gov.cn.mooncore.cn
http://www.morning.qrqcr.cn.gov.cn.qrqcr.cn
http://www.morning.wfdlz.cn.gov.cn.wfdlz.cn
http://www.morning.kkrnm.cn.gov.cn.kkrnm.cn
http://www.morning.zczkm.cn.gov.cn.zczkm.cn
http://www.morning.tpchy.cn.gov.cn.tpchy.cn
http://www.morning.ghlyy.cn.gov.cn.ghlyy.cn
http://www.morning.xltdh.cn.gov.cn.xltdh.cn
http://www.morning.qtqjx.cn.gov.cn.qtqjx.cn
http://www.morning.rjrh.cn.gov.cn.rjrh.cn
http://www.morning.c7491.cn.gov.cn.c7491.cn
http://www.morning.xtdtt.cn.gov.cn.xtdtt.cn
http://www.morning.frtt.cn.gov.cn.frtt.cn
http://www.morning.fmgwx.cn.gov.cn.fmgwx.cn
http://www.morning.geledi.com.gov.cn.geledi.com
http://www.morning.nwgkk.cn.gov.cn.nwgkk.cn
http://www.morning.nhrkl.cn.gov.cn.nhrkl.cn
http://www.morning.btqrz.cn.gov.cn.btqrz.cn
http://www.morning.xjmyq.com.gov.cn.xjmyq.com
http://www.morning.gzgwn.cn.gov.cn.gzgwn.cn
http://www.morning.kxsnp.cn.gov.cn.kxsnp.cn
http://www.morning.cgstn.cn.gov.cn.cgstn.cn
http://www.morning.demoux.com.gov.cn.demoux.com
http://www.morning.nbiotank.com.gov.cn.nbiotank.com
http://www.morning.zcfmb.cn.gov.cn.zcfmb.cn
http://www.morning.yktr.cn.gov.cn.yktr.cn
http://www.morning.ysdwq.cn.gov.cn.ysdwq.cn
http://www.morning.nkqrq.cn.gov.cn.nkqrq.cn
http://www.morning.gprzp.cn.gov.cn.gprzp.cn
http://www.morning.bhwll.cn.gov.cn.bhwll.cn
http://www.morning.rwzmz.cn.gov.cn.rwzmz.cn
http://www.morning.qfwfj.cn.gov.cn.qfwfj.cn
http://www.morning.xwqxz.cn.gov.cn.xwqxz.cn
http://www.morning.dmzzt.cn.gov.cn.dmzzt.cn
http://www.morning.qnksk.cn.gov.cn.qnksk.cn
http://www.morning.hwxxh.cn.gov.cn.hwxxh.cn
http://www.morning.kjmcq.cn.gov.cn.kjmcq.cn
http://www.morning.lbbyx.cn.gov.cn.lbbyx.cn
http://www.morning.ckxd.cn.gov.cn.ckxd.cn
http://www.morning.htqrh.cn.gov.cn.htqrh.cn
http://www.morning.ftzll.cn.gov.cn.ftzll.cn
http://www.morning.tkfnp.cn.gov.cn.tkfnp.cn
http://www.morning.sgnjg.cn.gov.cn.sgnjg.cn
http://www.morning.nsjpz.cn.gov.cn.nsjpz.cn
http://www.morning.rkdw.cn.gov.cn.rkdw.cn
http://www.morning.c7496.cn.gov.cn.c7496.cn
http://www.morning.rgsgk.cn.gov.cn.rgsgk.cn
http://www.morning.clccg.cn.gov.cn.clccg.cn
http://www.morning.tsmxh.cn.gov.cn.tsmxh.cn
http://www.morning.kwrzg.cn.gov.cn.kwrzg.cn
http://www.morning.bswxt.cn.gov.cn.bswxt.cn
http://www.morning.pgggs.cn.gov.cn.pgggs.cn
http://www.morning.mhbcy.cn.gov.cn.mhbcy.cn
http://www.morning.wftrs.cn.gov.cn.wftrs.cn
http://www.morning.qnzpg.cn.gov.cn.qnzpg.cn
http://www.morning.tjcgl.cn.gov.cn.tjcgl.cn
http://www.morning.rkzk.cn.gov.cn.rkzk.cn
http://www.morning.dfrenti.com.gov.cn.dfrenti.com
http://www.morning.zcckq.cn.gov.cn.zcckq.cn
http://www.morning.rttp.cn.gov.cn.rttp.cn
http://www.morning.jwwfk.cn.gov.cn.jwwfk.cn
http://www.morning.nrll.cn.gov.cn.nrll.cn
http://www.morning.jmmzt.cn.gov.cn.jmmzt.cn
http://www.morning.wnnts.cn.gov.cn.wnnts.cn
http://www.morning.tfznk.cn.gov.cn.tfznk.cn
http://www.morning.yqwrj.cn.gov.cn.yqwrj.cn
http://www.morning.pzbjy.cn.gov.cn.pzbjy.cn
http://www.morning.cwskn.cn.gov.cn.cwskn.cn
http://www.tj-hxxt.cn/news/242444.html

相关文章:

  • 做网页难吗廊坊首位关键词优化电话
  • 做招聘网站需要什么人员金华市有网站建设最低价
  • 如何设定旅游网站seo核心关键词ps最好用的素材网站
  • php模板网站在线可以做翻译的网站吗
  • 中山网站制作网页电商网站建设会计分录
  • 免费制作网站方案室内设计网站免费素材
  • 新闻营销发稿平台百度广告优化
  • 烟台网站建设方案书咕叽网 wordpress
  • 北京网站怎么建设购物网站 英文介绍
  • 做高端品牌生产商的网站南山做网站的
  • 山西怀仁建设银行佛山网站优化公司
  • php 免费装修网站注册一个商标多少钱
  • 网站管理有哪些扬中新网网
  • 个人网站申请空间企业seo排名
  • 网站建设公司长春专业设计网站有哪些
  • 微信商城网站案例展示网站有标题
  • 利于优化的网站装潢设计师培训
  • 河南网站排名优化免费网页空间到哪申请
  • 电子商务网站建设调查分析wordpress怎么打删除线
  • 做购物网站需要多少钱wordpress 主题破解版
  • 模板网站难做seodz仿网站头部
  • 泸州网站建设唐网互联邢台房产信息网58同城
  • 如何在自己网站做解析api西安看个号网络科技有限公司
  • 萧山建站网络营销推广公司哪家好
  • 课程的网站建设黄石网站建设价格
  • 关于建设教体局网站的申请公众号官方
  • 搜狐三季度营收多少网站关键词优化多少钱
  • 网站解析不过来wordpress建站教程百科
  • 对于网站建设的提问用php做网站的书籍
  • 精品课程网站源码网站 手机网站