BioLib 3.9.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package BioLib --version 3.9.0
                    
NuGet\Install-Package BioLib -Version 3.9.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BioLib" Version="3.9.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="BioLib" Version="3.9.0" />
                    
Directory.Packages.props
<PackageReference Include="BioLib" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add BioLib --version 3.9.0
                    
#r "nuget: BioLib, 3.9.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package BioLib@3.9.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=BioLib&version=3.9.0
                    
Install as a Cake Addin
#tool nuget:?package=BioLib&version=3.9.0
                    
Install as a Cake Tool

BioLib

Nuget DOI

A GUI-less version of Bio .NET library for editing & annotating various microscopy image formats. Supports all bioformats supported images. Integrates with ImageJ, running ImageJ filters & macro functions. Supports Windows, Linux and Mac. Check out the documentation.

Usage

//First call BioImage.Initialize to 
//initialize the Bioformats library.
BioImage.Initialize();

//Once initialized you can open OME, ImageJ tiff files, and Bio Tiff files with:
BioImage b = BioImage.OpenFile("file");

//Or if you want to use specifically the OME image reader you can use BioImage.OpenOME
BioImage b = BioImage.OpenOME("file");

//If you are working with a pyramidal image you can open a portion of a tiled image with OpenOME.
//BioImage.OpenOME(string file, int serie, bool tab, bool addToImages, bool tile, int tilex, int tiley, int tileSizeX, int tileSizeY)

//You can specify whether to open in a newtab as well as whether to add the image to 
//the Images.images table. As well as specify whether to open as a tile with the specified 
//tile X,Y position & tile width & height.    
BioImage.OpenOME("file",0,false,false,true,0,0,600,600);
//This will open a portion of the image as a tile and won't add it to the Images table.

//Once you have opened a tiled image with BioImage.OpenOME you can call the 
//GetTile(BioImage b, ZCT coord, int serie, int tilex, int tiley, int tileSizeX, int tileSizeY) method
// to quickly get another tile from different portion of the image. For BioGTK & BioLib
Bitmap bm = BioImage.GetTile(b, new ZCT(0,0,0), 0, 100, 100, 600, 600);

//To get the current coordinate of the ImageView you can call GetCoordinate.
ZCT cord = v.GetCoordinate();
//or to set the current coordinate
v.SetCoordinate(new ZCT(1,1,1));

//To create a point as well as any other ROI type you can call the ROI create methods.
ROI p = ROI.CreatePoint(cord, 0, 0);
ROI rect = ROI.CreateRectangle(cord, 0, 0, 100, 100);

//Usage of Graphics class for 16 & 48 bit images as well as regular bit depth images
//is very similar to System.Graphics.
//We create a new Graphics object by passing the Bitmap for BioGTK & BioLib and BufferInfo for BioCore
Graphics g = Graphics.FromImage(b.Buffers[0]);

//Then we create a pen by passing a ColorS which represent a Color with, 
//a higher bit depth (unsigned short) rather than a byte.
g.pen = new Pen(new ColorS(ushort.MaxValue, ushort.MaxValue, ushort.MaxValue));

//Then we can call the familiar methods DrawLine, DrawPolygon, FillPolygon etc.
g.DrawLine(0,0,100,100);
//Finally we dispose the Graphics object.
g.Dispose();

//We can also save the resulting image given the ID of the image in the Images table.
//All images opened with BioImage.OpenFile or BioImage.OpenOME are added to the 
//Images.images table with the filename as an ID.
BioImage.SaveFile("file","path");

//Usage of OMERO class.
OMERO.Connect("demo.openmicroscopy.org", 4064, "username", "password");
string[] files = OMERO.GetAllFiles().ToArray();
string[] dbs = OMERO.GetDatasets().ToArray();
string[] fs = OMERO.GetFolders().ToArray(); 
string[] dbf = OMERO.GetDatasetFiles("CZI").ToArray();

//Usage of QuPath class.
QuPath.Project qu = QuPath.OpenProject("test.qpproj");
BioImage[] bms = new BioImage[] { BioImage.OpenFile("test.ome.tif") };
List<BioImage[]> bims = new List<BioImage[]>();
bims.Add(bms);
QuPath.Project qp = QuPath.Project.FromImages(bims, "test.qpproj");
QuPath.Project.SaveProject("myproj.qpproj", bims);

//To convert between different pixel formats we can call for example To24Bit.
b.To24Bit();
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on BioLib:

Package Downloads
BioCore

A .NET library & program for annotating, & editing various microscopy imaging formats using Bioformats supported images. including whole slide, pyramidal & series.

BioGTK

A .NET application & library for editing & annotating various microscopy image formats. Supports all bioformats supported images. Integrates with ImageJ, running ImageJ filters & macro functions. Supports Windows, Linux and Mac.

BioImager

A .NET microscopy imaging application based on Bio library. Supports various microscopes by using imported libraries & GUI automation. Supported libraries include Prior® & Zeiss® & all devices supported by Micromanager 2.0 and python-microscope.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.9.1 41 2/12/2026
3.9.0 106 2/8/2026
3.8.1 116 2/2/2026
3.8.0 93 1/31/2026
3.7.0 461 12/9/2025
3.6.2 291 6/23/2025
3.6.1 221 6/22/2025
3.6.0 211 6/22/2025
3.5.0 263 1/20/2025
3.4.2 191 1/8/2025
3.4.1 224 1/6/2025
3.4.0 204 1/5/2025
3.3.0 241 12/17/2024
3.2.0 209 12/10/2024
3.1.1 198 12/3/2024
3.1.0 202 12/2/2024
3.0.0 204 11/25/2024
2.9.2 173 11/19/2024
2.9.1.1 210 11/18/2024
2.9.1 191 11/17/2024
Loading failed

Adds support for OpenSlide on arm64 & x64 for Linux and MacOS.